Professional Documents
Culture Documents
Mtodos numricos
Tema 1 Fundamentos de programacin
Introduccin al tema
Los programas computacionales son nicamente conjuntos de instrucciones que dirigen a la computadora para realizar una cierta tarea (Chapra y Canale, 2011).
En Mtodos Numricos utilizars programas en C# (C Sharp), Matlab y Excel para resolver problemas. En este tema entrars al entorno de programacin de C#, para que conociendo sus herramientas puedas resolver en los siguientes mdulos diversos mtodos numricos con programas que t mismo elabores.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Mtodos numricos
Fundamentos de programacin
Chapra y Canale (2011) resumen los principales tpicos de programacin a tener en cuenta:
4. Entrada/Salida.
Fundamentos de programacin
Qu es C# (C Sharp)?
C# es un entorno de programacin visual, controlado por eventos, en el cual se crean programas mediante el uso de un Entorno de Desarrollo Integrado (IDE) (Deitel y Deitel, 2007).
El IDE del que se habla es un entorno en el que se puede crear, editar, ejecutar, depurar programas en C# (C Sharp) de manera ms fcil.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Mtodos numricos
Fundamentos de programacin
El lenguaje C# (C Sharp) fue desarrollado por Microsoft desde el ao 2000 y se bas en C, C++ y Java para permitir a los programadores migrar sus programas a la arquitectura .NET, una manera ms accesible para la realizacin de programas.
La arquitectura .NET es una infraestructura que permite crear aplicaciones de software para la web, utilizando muchos lenguajes que pueden comunicarse entre s, como Visual C++, Visual Basic, Visual C#, Java, COBOL, JScript, Fortran, APL, Python, entre otros. Gracias a la plataforma .NET se podran hacer tambin aplicaciones para dispositivos mviles como telfonos celulares, PDAs, laptops, etc.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Fundamentos de programacin
Existen varias entornos de programacin en C# como el SharpDevelop 3.2, Mono-project, MonoDevelop, Eclipse, Emonic, Microsoft Visual C# (versiones: 6.0, .NET 2002, .NET 2003, 2005, 2008, 2010), etc. En este curso estaremos profundizando en el Microsoft Visual C# 2010 Express.
Mtodos numricos
Caractersticas de C# (C Sharp)
Comenzando a programar en C#
Puedes seguir los siguientes pasos para lograr hacer una primera aplicacin en C#:
Mtodos numricos
Comenzando a programar en C#
En donde se encuentra informacin de proyectos recientes, pantalla de bienvenida, tutoriales, actualizaciones, ltimas noticias, encabezados de Visual C#, etc.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Comenzando a programar en C#
Mtodos numricos
Comenzando a programar en C#
Comenzando a programar en C#
En esta ventana se muestran los siguientes elementos:
Mtodos numricos
Comenzando a programar en C#
Form1.cs [Diseo]: es el formulario donde se colocan los controles del cuadro de herramientas para desarrollar la interfaz que ser visible al correr una Aplicacin de Windows Forms.
Cuadro de herramientas: Contiene conos que representan los controles utilizados para personalizar formularios. Mediante la programacin visual podemos arrastrar y soltar controles en el formulario, lo cual es ms rpido y simple que crearlos mediante la escritura de cdigo GUI (Deitel y Deitel, 2007).
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Comenzando a programar en C#
Mtodos numricos
Comenzando a programar en C#
Ventana de propiedades: se muestran las propiedades del componente que se encuentre seleccionado en el formulario. Si no se encuentra seleccionado ningn componente, se mostrarn las propiedades del formulario: dimensiones, transparencia, color, etc.
Lista de errores: de acuerdo a la sintaxis del programa se muestra si existe algn tipo de error.
Estructura de programas en C#
Para estructurar un programa en C# para consola, en la ventana de Nuevo proyecto, da un nombre al proyecto, como por ejemplo: Explicacin del Tema 1. Elige la Aplicacin de consola, y haz clic en Aceptar.
Mtodos numricos
Estructura de programas en C#
Estructura de programas en C#
La aplicacin ya nos muestra el llamado a algunas libreras, y a esto nosotros agregaremos el programa que deseamos realizar. Como ejemplo puedes escribir el siguiente texto para realizar un programa que muestre un mensaje de texto en una lnea y la muestre en el smbolo del sistema:
using using using using System; System.Collections.Generic; System.Linq; System.Text;
namespace Explicacin_del_Tema_1 { class Program { static void Main(string[] args) { Console.WriteLine("Mi primer programa en C#"); Console.Read(); }//Fin del mtodo main } //Fin de la clase Explicacin del Tema 1 }
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Mtodos numricos
Estructura de programas en C#
Este comando nos permite escribir un texto en una lnea en la consola. Agregamos la siguiente instruccin para que el smbolo del sistema no desapareciera, sino que la ventana se quedara esttica es espera de leer algo:
Console.Read();
Al oprimir la flecha verde que se encuentra en la barra de herramientas estndar, o la tecla F5, el programa se correr y se depurar, mostrando el siguiente resultado:
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Estructura de programas en C#
Con esto has desarrollado un primer programa en C# para consola. Ms adelante irs realizando programas con ms elementos que irs agregando hasta que seas capaz de programar mtodos numricos.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
10
Mtodos numricos
Datos y operadores
Es necesario declarar al inicio de nuestro programa todas las variables que utilizars durante el programa. Lo anterior se realiza dependiendo el tipo de dato que queieras asignar a esa variable.
En C# (C Sharp) todos los tipos se dividen en: tipos por valor y tipos por referencia. En este curso utilizars principalmente los tipos simples, los cuales son por valor, y se resumen en la siguiente tabla:
Datos y operadores
Tipo bool byte sbyte char short ushort int uint float Tamao en bits 8 8 8 16 16 16 32 32 32 Rango de valores true o false 0 a 255 inclusive -128 a 127, inclusive '\u0000' a '\uFFFF' (0 a 65535), inclusive 32768 a 32767, inclusive 0 a 65535, inclusive 2,147,483,648 a 2,147,483,647, inclusive 0 a 4,294,967,295, inclusive Rango negativo aproximado: 3.4028234663852886E+38 a 1.40129846432481707E-45 Rango aproximado positivo: 1.40129846432481707E-45 a 3.4028234663852886E+38 Otros valores soportados: cero positivo y negativo infinito positivo y negativo no es un nmero (NaN)
11
Mtodos numricos
Datos y operadores
Tipo long Tamao en bits 64 Rango de valores 9,223,372,036,854,775,808 a 9,223,372,036,854,775,807, inclusive 0 a 18,446,744,073,709,551,615, inclusive Rango negativo aproximado: 1.7976931348623157E+308 a 4.94065645841246544E-324 Rango aproximado positivo: 4.94065645841246544E-324 a 1.7976931348623157E+308 Otros valores soportados: cero positivo y negativo infinito positivo y negativo no es un nmero (NaN)
ulong double
64 64
Datos y operadores
Tipo decimal Tamao en bits 128 Rango de valores Rango negativo: 79,228,162,514,264,337,593,543,95 0,335 (7.9E+28) a 1.0E-28 Rango positivo: 1.0E-28 a 79,228,162,514,264,337,593,543,95 0,335 (7.9E+28) (Deitel y Deitel, 2007)
12
Mtodos numricos
Datos y operadores
Ejemplo:
int num1 = 2147483647; // declarar la variable num1 como int.
Esta instruccin declara como variable tipo int a num2, y 2147483647 es el mayor nmero que se puede asignar a una variable que contendr datos de tipo int (ver tabla). Punto flotante: existen tres tipos de simples de datos para almacenar nmeros reales en memoria: float, double y decimal. Loa tipos float y double son conocidos como tipos de punto flotante.
Datos y operadores
Deitel y Deitel (2007) sealan que la diferencia entre los tipos de punto flotante y el decimal, es que los decimales requieren el doble de memoria y proporcionan hasta 29 dgitos significativos, y en la mayor parte de las aplicaciones no se requiere de tanta precisin.
13
Mtodos numricos
Datos y operadores
Las variables de tipo decimal almacenan un rango limitado de nmeros reales con precisin, mientras que las variables de punto flotante slo almacenan aproximaciones de nmeros reales, pero a travs de un rango mucho mayor de valores.
En general es ms utilizado el tipo double pero se podra utilizar el tipo decimal, por ejemplo en una aplicacin en que se utilicen cantidades monetarias. Cuando realizamos operaciones, los redondeos sern ms exactos utilizando el tipo decimal ya que almacena ms dgitos.
Operadores: en la siguiente tabla se resumen algunos de los principales operadores de C# (C Sharp):
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Datos y operadores
Tipo de operador Operadores aritmticos Operacin en C# Multiplicacin Divisin Residuo Suma Resta Incremento Decremento Agrupar trminos Igualdad Desigualdad Mayor que Menor que Mayor o igual que Menor o igual que Operador * / % + ++ -() == != > < >= <= Ejemplo a*6 a/ 6 r %s a+6 a- 6 int b = ++a int b = --a (a + b)*8+c a == b a != b a>b a<b a >= b a <= b Orden de evaluacin Se evala al inicio Se evala al inicio Se evala al inicio Se evala al final Se evala al final
Operadores de relacin
14
Mtodos numricos
C# realiza primero la divisin de a entre 2, despus la multiplicacin de b por 4, y despus realiza la suma de los dos resultados. Es importante recordar las propiedades asociativas de las ecuaciones al programar ecuaciones con operadores. A continuacin se presenta un ejemplo de programacin utilizando operadores y tipos de datos:
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
15
Mtodos numricos
Cierre
Ahora que has concluido la introduccin a la programacin en C# (C Sharp) te dars cuenta que necesitas mucha prctica para ir conociendo a fondo el entorno y lenguaje de programacin.
Has analizado en este tema las principales herramientas y entornos de programacin, los principales tipos de datos y operadores, as como los fundamentos para realizar una aplicacin, por lo que podrs comenzar a realizar algunos programas sencillos que te permitan ejercitarte.
Enseanza e Investigacin Superior A. C. Todos los Derechos Reservados 2011
Referencias bibliogrficas
H Chapra, S. y Canale, R. (2011). Mtodos numricos para ingenieros. (6 ed.) Mxico: McGraw Hill.
Deitel, H. y Deitel, P. (2007). Cmo programar C#. (2 ed.). Mxico: Pearson.
16
Mtodos numricos
Crditos
Diseo de contenido: Ing. Alejandro Corts Leal Coordinador de Calidad Acadmica de rea: Lic. Jos de Jess Romero lvarez. MC y MED Universidad Tec Milenio Produccin y edicin del curso: Tecnologa Educativa Universidad Virtual, ITESM
17