domingo, 18 de abril de 2010

Area y Perimetro de un circulo


















Linea 3 class Circulo es la declaracion de la clase
Linea 4 se declara un metodo para nuestra clase al abrir un llave {
Linea 5 y 10 son declaraciones de metodos
Linea 19 crea objeto
Linea 6 a 9 y 11 a 14 son funciones
Linea 20 C.Area(r) es la invocacion al metodo Area dentro de la clase Circulo.
(r) linea 20 es (int r) linea 5 , es decir, el valor que ingreso el usuario en linea 18
Linea 21 C.Perimetro (r*2) es la invocacion al metodo Perimetro dentro de la classe Circulo
(r*2) linea 21 es (int d) linea 10, es decir, el valor qu ingreso el usuario multiplicado por dos.
'
El programa empieza a correr a partir de la linea 15 e inmediatamente pide al usuario que de un radio. El numero que el usuario ingrese se guardara en la variable r. El tipo de dato que aceptara sera de tipo int
Posteriormente en la linea 19 el programa invoca a la clase Circulo y crea un nuevo objeto, es decir, un nuevo circulo. mediante esa invocacion a la clase circulo el programa ejecuta la linea 3, ya que en esa linea se declaro un clase llamada Circulo. De la linea 6 a la 9 se ejectua una funcion. La funcion indica que se multiplicara el valor de 3.1416 por el radio que ingreso el usuario elevado al cuadrado. La instruccion return de la linea 8 indica al programa que mande el resultado a la linea 20 y esta a su vez lo imprimira en la pantalla del usuario.
Posteriormente se ejecuta la funcion que se encuentra en las lineas 11 a 14 que multiplica el diametro por el valor de 3.1416. La instruccion return de la linea 13 manda el resultado a la linea 21 que imprimira el resultado al usuario.

Programacion Orientada a Objetos (POO)

POO

Es un paradigma de programacion que usa objetos y sus interacciones, para dise;ar aplicaciones y programas de ordenador.
Objeto
Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (metodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.
En C sharp los objetos se definen mediante classes y structs, que conforman el plano unico a partir del cual operan todos los objetos de ese tipo.
Para crear un nuevo objeto se utiliza la sintaxis
variable = new nombre_clase ( )
Campo
Son objetos o valores contenidos en una clase o estructura. Los campos permiten a las clases y estructuras encapsular datos. Los campos generalmente deberian de ser private. El acceso a campos por parte de clases externas deberia de ser indirecto, por medio de metodos, propiedades o indizadres.
Metodo
Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecucion se desencadena tras la recepcion de un mensaje. Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un metodo puede producir un cambio en las propiedades del objeto, o la generacion de un evento con un nuevo mensaje para otro objeto del sistema.
Son un bloque de codigo que contiene una serie de instrucciones. En C sharp, cada instruccion se ejecuta en el contexto de un metodo. Los metodos se declaran en una clase o estructura especificando el nivel de acceso, el valor devuelto, el nombre del metodo y los parametros de metodo. Los parametros del metodo se incluyen entre parentesis y separados por comas.
La sintaxis para la invocacion de los metodos es
objeto.nombreMetodo (arg1, arg 2 ...)
Funcion
Es un modulo de un programa separado del cuerpo principal, que realiza una tarea especifica y que puede regresar un valor a la parte principal del programa u otra funcion o procedimiento que la invoque.
Tipodato Nomfun (parametros)
{
instrucciones
return [dato,var,expresion]
}
El tipo de datpo especifica el tipo de dato que regresara la funcion
La instruccion return es quien regresa un dato a la parte del programa que la este llamando, sin embargo, la funcion return puede regresar un dato, una variable o una expresion algebraica (no formula ni ecuacion).
Procedimiento
Es un grupo de instrucciones, variables, constantes, etc, que estan dise;ados con un proposto particular y tiene su nombre propio.
Es un modulo del programa que realiza tareas especificas y que no puede regresar valores al programa principal o a otro procedimiento que lo este invocando.
Despues de escribir un procedimiento se usa su nombre propio como una sola instruccion o llamada al procedimiento.
void NomProc ()
{
instrucciones
}
Pueden existir tantos procedimientos como se deseen, para hacer una llamada o invocacion al procedimiento durante la ejecucion de un programa solo se debera escribir el nombre del procedimiento y los parentesis en blanco.

lunes, 15 de marzo de 2010

Prácticas de programación

1.- Serie Fibonacci
















2.- Pedir N números, sumar los pares y multiplicar los impares

















3.- Pedir un número y decir si es par o impar


















4.- Hacer un menú con las operaciones básicas, pedir 2 números y mostrar el resultado de la operación elegida.






















5.- Sumar N números enteros Positivos. Si es negativo que se salga del programa.












Prácticas de programación

1.- Que el usuario escriba su nombre y el programa lo repita 10 veces y después se salga. (Hay que dar enter para que el programa repita el nombre)















2.- El usuario escribe su nombre y el programa lo escribe 10 veces más en una sola acción.


















3.- El usuario da un número y el programa saca el factorial del mismo







miércoles, 3 de marzo de 2010

Práctica de Programación

1.- El usuario da un número al programa y este lo repite.


















2.- El usuario da un número y el programa imprime el resultado de ese número más dos. (No hay instrucciones)















2.- El usuario da un número y el programa le suma dos al número y lo imprime.

















3.- Usuario da dos números y el programa imprime los resultados de las operaciones básicas de esos dos números.













4.- El programa imprime "Hola Mundo" al usuario. No se cierra el programa hasta que el usuario de enter.

















5.- El programa imprime "Hola mundo" e inmediatamente se cierra.



lunes, 1 de marzo de 2010

Métodos para leer datos

variable = Console.Read(); // Lee un caracter
cadena = Console.ReadLine(); //Lee una cadena


VARIABLES Y CONSTANTES

Variable: Posición con nombre en memoria donde se almacena un valor de un cierto tipo de datos y puede ser modificado. Las variables pueden almacenar cadenas, números y estructuras.
Tiene un nombre (un identificador) que describe su propósito.

Constante: Variable cuyo valor no puede ser modificado.


TIPOS DE DATOS

1.- Enteros: Probablemente el tipo de dato más familiar identificado por la palabra reservada int

2.- Reales: Números decimales o muy grandes

3.- Caracteres: Cualquier elemento de un conjunto de caracteres o alfabeto (letras dígitos simbolos o signos de puntuación)

Investigar: Tipo, descripción, valores que acepta
int, string, short, long, char, float, double, bool

C++ tiene los siguientes tipos fundamentales:

  • Caracteres: char (también es un entero), wchar_t
  • Enteros: short int, int, long int, long long int
  • Números en coma floante: float, double, long double
  • Booleanos: bool
  • Vacío: void

Tipos de datos simples
a)tipos de datos enteros
1.- byte
2.- short
3.- int
4.- long
b)tipos de dato en coma flotante
1.- float
2.- double
c)tipos de datos boolean
1.- bool
d)tipos de carácter

http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_2.htm

http://msdn.microsoft.com/es-es/library/43td8x29(VS.80).aspx

*FLOAT --> El tipo float se almacena como un número de 4 bytes de punto flotante y precisión simple. Representa un valor IEEE 754 de 32 bits de precisión simple.

El tipo float puede representar números tan grande como 1038 (positivo o negativo) con una exactitud de aproximadamente siete dígitos y tan pequeños como 10-44. El tipo float también puede representar NaN (No es un número), infinito positivo y negativo, y cero positivo y negativo.

Este tipo es útil para aplicaciones que necesiten números elevados pero no requieran una gran precisión. Si requiere números muy precisos, considere el uso del tipo de datos Decimal

*CHAR --> El tipo char se almacena como un carácter Unicode de 2 bytes.Representa cualquiera de los 65.536 caracteres Unicode.El tipo de datos de .NET Framework correspondiente es Char. Las propiedades y métodos del tipo de datos char son iguales que los de Char.

* BOOL --> El valor del tipo boolean (true o false) se establece según esté la palabra clave true o false asignada al tipo.El tipo de datos de .NET Framework correspondiente es System.Boolean. El tipo de datos Boolean es idéntico al tipo de datos boolean.Las propiedades y métodos del tipo de datos boolean son iguales que los de System.Boolean.JScript define también un objeto Boolean. El tipo de datos boolean interactúa con el objeto Boolean. Por tanto, un objeto Boolean puede llamar a los métodos y propiedades del tipo de datos boolean, y un tipo de datos boolean puede llamar a los métodos y propiedades del objeto Boolean. Para obtener información adicional, vea Boolean (Propiedades y métodos del objeto). Más aún, los objetos Boolean son aceptados por funciones que toman tipos de datos boolean y viceversa. Se debe utilizar el tipo de datos boolean en lugar del objeto Boolean en la mayoría de las circunstancias.

int --> El tipo de datos int se almacena como un entero de 4 bytes. Puede representar enteros en el intervalo de 2.147.483.648 negativo a 2.147.483.647 positivo, ambos inclusive.

El tipo de datos de .NET Framework correspondiente es Int32. Las propiedades y métodos del tipo de datos int son iguales que los deInt32.

STRING --> La longitud de un objeto String puede ir desde cero hasta, aproximadamente, dos mil millones de caracteres. Cada carácter es un valor Unicode de 16 bits.

El tipo de datos equivalente de .NET Framework es String.

SHORT --> El tipo de datos short se almacena como un entero de 2 bytes.

Puede representar enteros en el intervalo de 32.768 negativo a 32.767 positivo, ambos inclusive.

El tipo de datos de .NET Framework correspondiente es Int16. Las propiedades y los métodos del tipo de datos short son iguales que los de Int16.

LONG --> El tipo de datos long se almacena como un entero de 8 bytes.

El tipo long puede representar enteros en el intervalo aproximado de 1019 negativo a 1019.

El tipo de datos correspondiente de .NET Framework es Int64. Las propiedades y los métodos del tipo de datos long son iguales que los de Int64.

DOUBLE --> El tipo double se almacena como un número de 8 bytes de punto flotante y doble precisión. Representa un valor IEEE 754 de 64 bits de doble precisión.

El tipo double puede representar números tan grande como 10308 (positivo o negativo) con una exactitud de aproximadamente 15 dígitos y tan pequeños como 10-323. El tipo double también puede representar NaN (No es un número), infinito positivo y negativo, y cero positivo y negativo.

Este tipo es útil para aplicaciones que necesiten números elevados pero no requieran una gran precisión. Si requiere números muy precisos, considere el uso del tipo de datos Decimal.

El tipo de datos de .NET Framework correspondiente es Double. El tipo double es equivalente al tipo Number .

DECIMAL --> El tipo decimal se almacena como una parte entera de 12 bytes, un signo de 1 bit y un factor de escala.

Representa con exactitud números decimales muy extensos o precisos. Los números tan grandes como 1028 (positivo o negativo) y con hasta 28 dígitos significativos pueden almacenarse como un tipo decimal sin pérdida de precisión. Este tipo es muy útil para aplicaciones (como en contabilidad) donde se deben evitar errores de redondeo.

El tipo de datos de .NET Framework correspondiente es Decimal. Las propiedades y los métodos del tipo de datos decimal son iguales que los de Decimal.









Espacio de nombres

Es una clasificación especial utilizada para agrupar un conjunto de clases y estructuras relacionadas así como para aislar ese grupo de nombres en conjunto de tipos de dtos separados y distintos.
No se debe tener dos clases con el mismo nombre en un espacio de nombres y pueden ser predefinidos o definidos por el usuario.

Sintaxis -->

namespace NombreEspacio
{
// Aquí van las clases del espacio de nombres
}


CLASE

Unidad básica en la programación orientada a objetos. Todo programa en C# se organiza en clases que encapsulan datos y comportaminetos.
Una clase se construye con la palabra class seguido del nombre de la clase y el simbolo de inicio y fin de un bloque para delimitar la codificación de sus miembros.
Sintaxis:

class NombreClase
{
//Aquí se codifican los miembros de la clase
}

MÉTODOS PARA ESCRIBIR DATOS

1.- Write --> Escribe sin añadir el caracter de fin de linea a la cadena

2.- Writeline --> Sí añada el caracter de fin de linea a la cadena, de modo que lo siguiente que se escriba se colocará en la siguiente linea

Ejemplo:

Console.Write("Hola");
Console.WriteLine("Pepe");
Console.Write ("Cómo estás, ");
Console.WriteLine("¿bien?");

Ofrecería este resultado en la consola:

HolaPepe
Cómo estas , ¿bien?


viernes, 26 de febrero de 2010

PT ACT -> Incompatibilidad de la encapsulación de WAN




















1.- Configure la encapsulación ppp en las interfaces?

¿Que sucede cuando un extremo del enlace serial se encuentra en ppp y el otro en hdcl? 
Interface Serial 0/0/0, changed state to down

¿Que sucede si la encapsulación ppp se configura en ambos extremos del enlace serial?
Interface Serial 0/0/0, changed state to up

2.- Examine las incompatibilidades de encapsulación WAN

¿Que les sucedió a las interfaces seriales en R2?
Line protocol on Interface serial0/0/1, changed state to down
Line protocol on Interface serial0/0/0, changed state to down

REFLEXIÖN

¿Por qué es importante asegurarse de que la encapsulación a través de un enlace sea idéntica en ambos extremos? Para que haya conectividad






miércoles, 24 de febrero de 2010

Sentencias y bloques

La sentencia es la representacion de una acción, concecuencia de acciones ejecutables (operaciones)

Los bloques son grupos de sentencias delimitadas por llaves.

Método main

Es el punto de entrada al programa y la ejecución siempre inicia en el método main.
El método main debe ser:
* declarado static y en una clase coestructura, debe de regresar void o int, debe de ser escrito Main con mayúscula y puede no tener parámetros o recibir un arreglo de strings.


Elementos léxicos de un programa

1.- Comentarios --> anotaciones para documentar el programa. Existen dos formas de colocar comentarios:
// para un renglón
/*para más de un renglón*/

2.- Palabras reservadas --> palabras que tienen un determinado significado para el compilador.

3.- Identificadores --> nombres que los programadores dan a los diferentes elementos de un programa.
Deben de tener las siguientescaracterísticas:
* letras, caracteres, dígitos
* diferentes a las palabras reservadas
* no comenzar con dígitos
* sensible a mayúsculas y minúsculas
* debe contener nombres significativos

4.- Operadores y Punteros --> los operadores indican las operaciones y los punteros agrupan o separan. (ejemplo: { })

5.- Literales --> valores constantes escritos directamente en el programa.

6.- Directivas del preprocesador --> instrucciones al compilador. Comienzan con un signo de #



lunes, 22 de febrero de 2010

Antecedentes C-SHARP

1959 --> El lenguaje COBOL (acrónimo de COmmon Business -Oriented LanguageLenguaje Común Orientado a Negocios) fue creado en el año 1960 con el objetivo de crear un lenguaje de programación universal que pudiera ser usado en cualquier ordenador, ya que en los años 1960 existían numerosos modelos de ordenadores incompatibles entre sí, y que estuviera orientado principalmente a los negocios, es decir, a la llamada informática de gestión.

1962 --> SNOBOL (StriNg Oriented symBOlic Language) es un lenguaje de programación de computadoras de muy alto nivel que surgió en la década de los 60 en los Laboratorios Bell merced al equipo formado por David J. FarberRalph E. Griswold y Ivan P. Polonsky.

1964 --> BASIC es un lenguaje de programación que originalmente fue desarrollado como una herramienta de enseñanza; se diseminó entre las microcomputadoras hogareñas a partir de la década de 1980. Actualmente continúa siendo muy popular, en muchos dialectos bastante distintos del original. BASIC es el acrónimo de Beginners All-purpose Symbolic Instruction Code;1 por correspondencia con Thomas E. Kurtz.

1967 --> Simula es el primer lenguaje de programación orientada a objetos (OOP). Varios años después de su desarrollo, casi todos los lenguajes modernos comenzaron a utilizar sus principios de orientación a objetos. Así fue como se popularizaron términos como clasesobjetosinstanciasherencia,polimorfismo, etc.

1967 --> Logo es un lenguaje de alto nivel en parte funcional en parte estructurado, de muy fácil aprendizaje, razón por la cual suele ser el lenguaje de programación preferido para trabajar con niños y jóvenes. Fue diseñado con fines didácticos por Danny BobrowWally Feurzeig y Seymour Papert, los cuales se basaron en las características del lenguaje Lisp

1969 --> B es el nombre de un lenguaje de programación desarrollado en los Bell Labs, predecesor del lenguaje de programación C. Fue mayoritariamente un trabajo de Kenneth L. Thompson con contribuciones de Dennis M. Ritchiepublicado por primera vez en el año 1969 [cita requerida].

1969 --> Smalltalk es un lenguaje de programación que permite realizar tareas de computación mediante la interacción con un entorno de objetos virtuales. Metafóricamente, se puede considerar que un Smalltalk es un mundo virtual donde viven objetos que se comunican mediante el envío de mensajes.

finales 60's --> APL (A Programing Language, también conocido como Array Processing Language desde hace algunos años) es un lenguaje de programacióninterpretado desarrollado por Kenneth Iverson, de IBM, a finales de los años 60.

principios 70's --> El Prolog (o PROLOG), proveniente del francés PROgrammation en LOGique,1 es un lenguaje de programación lógico e interpretado, bastante conocido en el medio de investigación en Inteligencia Artificial.

1970 --> Pascal es un lenguaje de programación desarrollado por el profesor suizo Niklaus Wirth a finales de los años 60. Su objetivo era crear un lenguaje que facilitara el aprendizaje de la programación a sus alumnos. Sin embargo con el tiempo su utilización excedió el ámbito académico para convertirse en una herramienta para la creación de aplicaciones de todo tipo.

1972 --> C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bellcomo evolución del anterior es decir el lenguaje B, a su vez basado en BCPL.

1973 --> En 1973, el lenguaje C se había vuelto tan potente que la mayor parte del kernel Unix, originalmente escrito en el lenguaje ensamblador PDP-11/20, fue reescrita en C. Éste fue uno de los primeros núcleos de sistema operativo implementados en un lenguaje distinto al ensamblador. 

mediados 70's --> Scheme es un lenguaje de programación. Es un lenguaje funcional (si bien impuro, ya que, por ejemplo, sus estructuras de datos no son inmutables) y un dialecto de Lisp. Fue desarrollado por Guy L. Steele y Gerald Jay Sussman en la década de los setenta e introducido en el mundo académico a través de una serie de artículos conocidos como los Lambda Papers de Sussman y Steele.

1978 --> En 1978, Ritchie y Brian Kernighan publicaron la primera edición de El lenguaje de programación C, también conocido como La biblia de C. Este libro fue durante años la especificación informal del lenguaje. El lenguaje descrito en este libro recibe habitualmente el nombre de "el C de Kernighan y Ritchie" o simplemente "K&R C"

1979 --> ADA Ada es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++..

Finales de 70's --> A finales de la década de 1970, C empezó a sustituir a BASIC como lenguaje de programación de microcomputadores predominante. 

80's --> Durante ladécada de 1980 se empezó a usar en los IBM PC, lo que incrementó su popularidad significativamente. 

80's--> Bjarne Stroustrup empezó a trabajar con algunos compañeros de Bell Labs para añadir funcionalidades de programación orientada a objetos a C. El lenguaje que crearon, llamado C++, es hoy en día el lenguaje de programación de aplicaciones más común en el sistema operativo Microsoft Windows

1983 --> C++ es un lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.

1984 --> MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es un software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M). Está disponible para las plataformas UnixWindows y Apple Mac OS X.Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware.

1987 --> Perl es un lenguaje de programación diseñado por Larry Wall en 1987. Perl toma características del lenguaje C, del lenguaje interpretado shell (sh), AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación. Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las limitaciones de los otros lenguajes de script.

1989 -->  Tras un proceso largo y arduo, se completó el estándar en 1989 y se ratificó como el "Lenguaje de Programación C" ANSI X3.159-1989. Esta versión del lenguaje se conoce a menudo como ANSI C, o a veces como C89 (para distinguirla de C99).

1990 --> En 1990, el estándar ANSI (con algunas modificaciones menores) fue adoptado por la Organización Internacional para la Estandarización (ISO) en el estándar ISO/IEC 9899:1990. Esta versión se conoce a veces como C90. No obstante, "C89" y "C90" se refieren en esencia al mismo lenguaje.

1991 --> Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.

1995 --> PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt oGTK+.

1999 --> C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetosdesarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO. En enero de 1999Anders Hejlsberg formó un equipo con la misión de desarrollar un nuevo lenguaje de programación llamado Cool (C Orientado a Objetos). Este nombre tuvo que ser cambiado debido a problemas de marca pasando a llamarse C♯ aunque habitualmente se escribe C#.1 La biblioteca de clases de la plataforma .NET fue migrada entonces al nuevo lenguaje.    
Hejlsberg lideró el proyecto de desarrollo de C♯. Anteriormente, ya participó en el desarrollo de otros lenguajes como Turbo PascalJ++ y Borland Delphi

2000 --> Tras el proceso de estandarización de ANSI, la especificación del lenguaje C permaneció relativamente estable durante algún tiempo, mientras queC++ siguió evolucionando. Sin embargo, el estándar continuó bajo revisión a finales de la década de 1990, lo que llevó a la publicación del estándar ISO 9899:1999 en 1999. Este estándar se denomina habitualmente "C99". Se adoptó como estándar ANSI en marzo de 2000.

2001--> C♯, como parte de la plataforma.NET, está normalizado por ECMA desde diciembre de 2001 (C# Language Specification "Especificación del lenguaje C♯"). 

2005--> El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables. 

2007--> El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).