martes, 6 de mayo de 2008

ACCESO A DATOS Y METODOS

Despues de que se a creado un objeto, se puede acceder a sus datos y metodos utilizando la anotacion siguiente:

nombreObjeto.datos //Referencia a un dato del objeto//
nombre.Objeto.Metodo() //Referencia a un método del objeto//

Ejemplo:

miCirculo.radio //RadiodemiCirculo//
miCirculo.CalcularSuperficie() //Devuelvelasuperficie de miCirculo//

UTILIZACION DE UN METODO

Los metodos son los miembros de un tipo clase donde se especifican las acciones que se realizan por un objeto de la misma clase.

Una invocaccion a un metodo es una peticion al metodo para que se ejecute su accion y lo hagan con el objeto mensionado.

La invocacion de un metodo se denomina tambien llamar a un metodo y pasar un mensaje a un objeto.

Existen dos tipos de metodos:
1. Los que devuelven un valor unico (elmetodo ReadLine devuelve un unico valor e tipo string).
2. Los que ejecutan alguna accion distinta de devolver un unico valor que se denominan metodos void. Los metodos WriteLine realizan una accion distinta de devolver un valor unico.

LLAMADA O INVOCACION DE UN METODO

Se puede realizar de 2 formas, dependiendo de que el metodo devuelva o no un valor.

1.

Si el metodo devuelve un valor, la llamada al metodo se trata normalmente como un valor, por ejemplo:

int mayo=math.max(3,4); //llama al metodo max(3,4) y asigna el resultado del metodo a la variable mayor//

Otro ejemplo puede ser la llamada

System.Console:WriteLine(Math.Max(3,4)); //que imprime el valor devuelto por la llamada al metodo max(3,4)//

2.

Si el metodo devuelve void, una llamada al metodo debe ser una sentencia. Por ejemplo el metodo WriteLine() devuelve void. La siguiente llamada es una sentencia.

System.Console.WriteLine("Sierra Tarahumara");

Si se considera ahora un objeto, miCuenta de la clase CuentaCorriente, una invocacion al metodo depositar tendra el formato:

miCuenta.Depositar(2400);

lunes, 5 de mayo de 2008

SOBRECARGA DE METODOS

En una misma clase pueden definirse varios metodos con el mismo nombre, siempre y cuando tomen diferente numero o tipo de parametros.

Es posible ya que cuando se le llame al compilador sabra a cual llamar a partir de los parametros pasados en la llamada.

No se pueden permitir varios metodos que solo se diferencien en su valor de retorno, ya que como este nose debe indicar al llamarlos, no podria diferenciarse a que metodo en concreto se hace referencia en cada llamada.

Ejemplo:
Apartir de la llamada p.cumpleaños ();
Si ademas de la versiondel cumpleaños se abre y cierra parentesis que no retorna nada ubiese otra que retornara un int, coma sabria entonces el compilador a cual llamar

void Cumpleaños ()
{
Edad ++;
}
void Cumpleaños (int cantidad)
{
Edad=Edad-cantidad;
}
void Cumpleaños (float cant1)
{
Edad=Edad+cant1;
}
void Cumpleaños (int cantidad, int resta)
{
Edad=Edad-(cantidad-resta);
}


Persona Andres=newPersona();//estamos creando un objeto//
Andres.Cumpleaños();
Persona Vicky=newPersona();
Vicky.Cumpleaños(10);
Persona Luis=newPersona();
Luis.Cumpleaños(2.0);
Persona.Rosa=newPersona();
Rosa.Cumpleaños(2,10);


SINTAXIS PARA DECLARAR UN OBJETO

Una vez que se define una clase, el nombre de la clase se convierte en un nuevo tipo de dato y se utiliza tanto como para declarar variables de ese tipo, como para crear objetos del mismo

sintaxis:

nombreClase nombreObjeto;

Ejemplo:

circulo miCirculo;

DECLARACION Y CREACION DE UN OBJETO

La declaracion de un objeto, simplemente asocia el objeto con una clase, asiendo el objeto una instancia o copia de esa clase. Hay que tomar en cuenta que la declaración no crea el objeto.

Para crear realmente miCirculo se necesita utilizar el operador new con el objeto para indicarle a la computadora que cree un objeto miCirculo y asigne espacio de memoria para el.

SINTAXIS PARA CREAR UN OBJETO:

nomObjeto=new nombreClase();

Ejemplo:

miCirculo=new Circulo ();

Se pueden convinar la declaracion y la creacion, o instanciacion en una sola sentencia.

Sintaxis:

nombreClase nombreObjeto=new nombreClase();

Ejemplo:

Circulo miCirculo=newCirculo();

lunes, 28 de abril de 2008

CLASE

Programacion orientada a objetos

Forma de organizacion del conocimiento en que las entidades centrales son los objetos.
Los objetos representan formas fisicas o abstractas pero tienen un estado y un comportamiento.

La programacion orientada a objetos utiliza los objetos como bloques de construccion logicos, cada objeto es una instancia o copia de una clase y las clases se relacionan unas con otras por medio de relaciones de herencia.

Objeto: en él se une una serie de datos con las rutinas necesarias para manipularlos (miembros de la clase).

Clase: estructura o plantilla que sirve para definir un objeto, habitualmente contiene una coleccion de metodos y definiciones de datos. Tiene un nombre y especifica los miembros que pertencen a la clase. Una veez que se define una clase, el nombre de la clase se convierte en un nuevo tipo de dato.

Consata de metodos y datos que resumen caracteristicas comúnes de los objetos de tal manera que es la declaracion de la forma que tendran los objetos fabricados de esa clase. Cada vez que se construye un objeto de una clase se crea una instancia de esa clase.

SINTAXIS:

class
{
miembros
}

ejemplo:
class Circulo
{
public double radio=5.0; //declara la variable//caracteristica del objeto//
public double CalcularSuperficie()//como se va a comportar el objeto//
{
return radio*radio*3.141592;
}
}

public //se usa en todo el programa//
double//para que sean decimales y una cantidad grande//

Dentro de una clase existen campos, un campo es un dato o propiedad comun a todos los objetos de una determinada clase.

SINTAXIX:
tipoCampo nombreCampo;

cualquier identificador que siga las reglas pra la escritura para identificadores y no coinsida con el nombre de ningun ptro miembro previamente definido en la clase. Permiten el almacenamimento de datos, por lo que se les denomina tambien variables.

Tipo de Campo: Debemos de indicar cual es el tipo de dato del objeto, que vamos a crear. Este tipo puede corresponder con cualquiera de los predefinidos o con cualquier otro que nosoros hayamos definido.

Ejemplo:

class Persona
{
string nombre; //almacena el nombre//
int edad; //almacena edad//
string RFC; //almacena RFC//
}

Todos los objetos de clase persona incorporaran campos y almacenaran cual es el nombre de la persona que cad objeto representa, cual es su edad y cual es su RFC.

Para acceder a un campo de un determinado objeto se usa la SINTAXIS:

objeto.campo;

Ejemplo:
Para acceder al campo edad de un objeto persona llamado P y cambiar su valos por 20 seria:

p.Edad=20

lunes, 21 de abril de 2008

CICLO DO WHILE

CICLO DE WHILE

El cuerpo de funciones se ejecuta mientras una condición permanezca
verdadera

En el momento en el que la condición se convierte en falsa, la
función se termina

inicializa variable condición;
while (condición)

do{
GRUPO DE INSTRUCCIONES,
INSTRUCCIONES PARA SALIR DEL CICLO;
}
;

CICLO DO-WHILE

Su diferencia básica con el ciclo While es que la prueba de condición esta hecha al finalizar el ciclo, por consecuencia las instrucciones se ejecutan cuando menos una vez por que primero ejecuta las instrucciones y luego evelua la condicion, si la condicione es verdadera vuelve a ejecutar el ciclo.

inicializa variable condición;
do{
Grupo de instrucciones;
para terminar el ciclo;
} WHILE (CONDICIÓN);


Ejercicio:

int si;
int x = ("menu");
("Ingrese la palabra si para continuar")
si;
continua el ciclo;
menu << break;
}

while ("menu" = si); //mientras ocurra (menu = si);
return ; end

}

PRACTICA 1 CICLO DO/WHILE:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
char x;
do{
float resultado;
Console.WriteLine("Dame un Numero");
float b = float.Parse (Console.ReadLine());
Console.WriteLine("Dame otro numero");
float h = float.Parse (Console.ReadLine());
Console.WriteLine("menu");
Console.WriteLine("a.suma");
Console.WriteLine ("b.resta");
Console.WriteLine("c.multiplicacion");
Console.WriteLine("d.division");

char a = char.Parse(Console.ReadLine());
switch (a)
{
case 'a': resultado = b + h;
Console.WriteLine("el resultado es" + resultado);
break;
case 'b': resultado = b - h;
Console.WriteLine("el resultado es" + resultado);
break;
case 'c': resultado = b * h;
Console.WriteLine("el resultado es" + resultado);
break;
case 'd': resultado = b / h;
Console.WriteLine("elresultado es" + resultado);
break;
default:
Console.WriteLine("error");
break;
}
Console.WriteLine("Pon S si desea repetir o N si no");
x = char.Parse(Console.ReadLine());
} while(x == 's');
}
}


}

miércoles, 9 de abril de 2008

C# PRACTICAS

Practica 1 Frutas

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{ Console.WriteLine(”Menu”);
Console.WriteLine(”a. Platano”);
Console.WriteLine(”b. Uva”);
Console.WriteLine(”c. Fresa”);
Console.WriteLine(”d. Manzana”);
Console.WriteLine(”e. Kiwi”);
char a = char.Parse(Console.ReadLine());
switch (a)
{
case ‘a’:
Console.WriteLine(”El platano es amarillo”);
break;
case ‘b’:
Console.WriteLine(”La uva es chiquita”);
break;
case ‘c’:
Console.WriteLine(”Sabe rica”);
break;
case ‘d’:
Console.WriteLine(”Esta deliciosa”);
break;
case ‘e’:
Console.WriteLine(”Es verde”);
break;

}
string h = Console.ReadLine();

}

}
}


Practica 2 Factorial

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace nelly_factorial
{
class Program
{
static void Main(string[] args)
{
int a = 0, i, b = 1, c = 0;
Console.WriteLine("Dame un numero");
int n = int.Parse(Console.ReadLine());
for (i = n; n > 1; i--)
{
a = n * (n - 1);
c = b;
b = c * a;
n = n - 2;
}
Console.WriteLine("El numero factorial es:" + b);
string x = Console.ReadLine();
}
}
}

Practica 3 numero primos

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int c;
Console.WriteLine(”dame un numero”);
int a = int.Parse(Console.ReadLine());
c = a % 2;
if (a == 2){
Console.WriteLine(”Es Primo”);
}else if(c==0)
{Console.WriteLine(”No es Primo”);}
else
{Console.WriteLine(”Es Primo”);

}
string x= Console.ReadLine();

}
}
}

Practica 4 Fibonacci

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace nelly_fibonacci
{
class Program
{
static void Main(string[] args)
{
int a= 1, b= 1, i, c;
for (i = 0; i <=7; i++)
c = a + b;
b = a;
a = c;
Console.WriteLine( c );
string x =Console.ReadLine();
{
}
}
}
}

martes, 11 de marzo de 2008

PRACTICAS "PROGRAMAS

{
static void Main(string[] args)
{
int i;
for(i=0; i<10; i++) //es para iniciar un ciclo en donde i es cero (iniciaciòn) i es menor de 10 (condicion) y va en aumento//
{Console.WriteLine("Hola Mundo"); //PAra escribir hola mundo//
}
string a = Console.ReadLine(); //es para que el programa se spere y deje verlo y se cierre con un enter//
}
}


result a+b

console.writeline("el resultado es" + result); //para que aparesca el resultado de a+b en la pantalla//


Ejercicio 1:
2 nùmeros a y b
suma y resultado


using System;
using System.Collections.Generic;
using System.Text;

namespace MONICA
{
class Program
{
static void Main(string[] args)
{
int resultado;
Console.WriteLine("Dame un numero");
int a=int.Parse(Console.ReadLine());
Console.WriteLine("Dame otro Numero");
int b=int.Parse(Console.ReadLine());
resultado = a + b;
Console.WriteLine("El resultado es:"+resultado);
Console.ReadLine();

string a = Console.ReadLine();
}
}
}






Ejercico 2:

Pedir al usuario edad
Si(if):
edad>=18 Bienvenido
edad<18 Acceso denegado


using System;
using System.Collections.Generic;
using System.Text;

namespace MONICA
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Dame tu edad");
int edad = int.Parse(Console.ReadLine());
if(edad>=18)
{Console.WriteLine("Bienvenido");}
else
{Console.WriteLine("Acceso denegado");}
Console.ReadLine();
}
}
}
if(edad>=18)
{Console.WriteLine("Bienvenido");}// es la condicion de que si es mayor a 18, y despues se pone lo que debe de pasar si se cumple la condiciòn.
else
{Console.WriteLine("Acceso denegado");}//es lo que debe hacer "sino" se cumple la condicion.
int edad = int.Parse(Console.ReadLine());//te dice que


Ejercicio 3:

100 veces anumerando cada frase


{
static void Main(string[] args)
{
int i;
for(i=1; i<100; i++)

{Console.WriteLine(i+"moni"); }
string a = Console.ReadLine();
}
}


Console.WriteLine(i+"moni");//con el i hace que ya cada que se escriba moni se ponga a lado el numero que corresponda del 1 al 100//



Ejercicio 4:
Menu de Numeros

lunes, 10 de marzo de 2008

METODOS PARA LEER DATOS

Existen dos metodos para leer datos, el primero sirve para leer solo un caracter y el segundo lee una cadena completa de caracteres.
variable=Console.Read( );
cadena=Console.ReadLine( );

Para guardar un dato dentro de una variable se ocupa la siguiente sintaxis:
tipo variable = tipo.parse(Console.ReadLine());

tipo puede ser: int, char, double
variable: nombre que se le va a dar y depende de las caracteristicas de los identificadores
Parse: palabra reservada que ayuda a transformar la entrada de texto a una estructura de datos (parseo).
El de parentesis: si se quiere un caracter o una cadena de ellos.

ej: int num 1 = int Parse(Console.ReadLine());

ESTRUCTURAS DE CONTROL

Evaluan una o mas alternativasy pueden ser bidireccional o multidireccional.
Instruccion if(bidireccional): Instruccion condicional mas usada en los diversos lenguajes de programación. Su sintaxis es:
if(condicional)
{
grupo cierto de instrucciones;
}
else
{
grupo falso de instrucciones;
};(ese punto y coma es opcional)


Instruccion switch(multidireccional)

Existen ocasiones o programas donde se exige evaluar muchas condiciones a la vez, en estos casos se usa una condicion compuesta muy grande. o se debe intentar convertir el problema a uno que se pueda resolver utilizando la instruccion switch.

Esta instruccion es de decision multiple donde el compliador prueba o busca el valor contenido en una variable entera o un caracter de constantes apropiadas, cuando la computadora encuentra el valor de igualdad entre variable y constante entonces ejecuta el grupo de instrucciones asociado a dicha constante. Si no encuentra el valor de igualdad entonces ejecuta un grupo de instrucciones asociados a un default aunque este ultimo es opcional.

Cuando son letras se ponen comillas simples "a" si son numeros basta con poner el numero 1.

Switch (variable)
{
case 1
a+b
break;
case "b"
a-b
break;

case default
ERROR

Para que dos casos sean iguales o sigan el mismo patron es:
case 1
case 2
instrucciones
break;

Ejercicio 1:

- Pedir dos numeros enteros
- Hacer un meu que contenga:
1. suma
2. resta
3. multiplicacion
4. division
-de operacion a realizar

Console.WriteLine("Dame un numero")
int num 1= int. Parse (Console.ReadLine);