sábado, 25 de abril de 2015

PROGRAMACION



PROGRAMACIÓN
Generalidades de la programación de computadoras

 
 

Conceptos básicos de programación:
Programación: se llama programación a la creación de un programa de computadora
 
Programa: es un conjunto concreto de instrucciones que la computadora debe seguir para procesar datos y convertirlos en información.
Computadora: máquina electrónica que funciona casi a la velocidad de la luz y es capaz de procesar datos para convertirlos en información útil al ser humano.
 
Características de un programa:
  • Debe ser confiable y funcional
  • Advertir errores de entrada obvios y comunes
  • Documentado adecuadamente
  • Ser comprensible
  • Codificado en el lenguaje apropiado
  

 
 
 

Lenguajes de programación:
Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente.
 
 
Un lenguaje de programación permite a un programador especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados y transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico.

Lenguajes de alto y bajo nivel
Lenguaje de bajo nivel: es el tipo de lenguaje que cualquier computadora es capaz de entender. Se dice que los programas escritos en forma de ceros y unos están en lenguaje de máquina, porque esa es la versión del programa que la computadora realmente lee y sigue.
Lenguajes de alto nivel: son lenguajes de programación que se asemejan a las lenguas humanas usando palabras y frases fáciles de entender.
 
 
En un lenguaje de bajo nivel cada instrucción corresponde a una acción ejecutable por el ordenador, mientras que en los lenguajes de alto nivel una instrucción suele corresponder a varias acciones.
 
 
 

Intérpretes y compiladores:
Los compiladores, los intérpretes y los ensambladores se encargan de traducir lo que haya escrito en lenguaje de alto nivel (código fuente) y lo convierten a código objeto (casi ejecutable).

 
 

Tipos de datos

Dato: es la expresión general que describe los objetos con los cuales opera el programa. Por ejemplo, la edad y el domicilio de una persona, forman parte de sus datos. Los datos se sitúan en objetos llamados variables.
 
 
 
Los tipos son: simples (no estructurados) y compuestos (estructurados).
 

Tipos de datos simples:




Tipos de datos compuestos:
 
 
 

Las Variables: son zonas de memoria cuyo contenido cambia durante la fase de procesamiento de información. Son objetos cuyo valor puede ser modificado a lo largo de la ejecución de un programa.
Las variables llevan un nombre llamado Identificador. Este puede ser una cadena de letras y dígitos, empezando siempre con una letra. Por ejemplo: Pi, curso99, nom_alum, etc.

Los identificadores: son palabras creadas por los programadores para dar nombre a los objetos y demás elementos que necesitamos declarar en un programa: variables, constantes, tipos, estructuras de datos, archivos, subprogramas, etc.
En C++ las letras mayúsculas se tratan como diferentes y distintas unas de otras. Por ejemplo, contador, Contador y CONTADOR son tres nombres de identificadores distintos.
Un identificador no puede ser igual a una palabra reservada, y no debe tener el mismo nombre que una función, ya sea definida por el usuario o de la biblioteca de C.
 
 Constantes, operador, expresiones
Constantes: Son objetos cuyo valor permanece invariable a lo largo de la ejecución de un programa. Una constante es la denominación de un valor concreto, de tal forma que se utiliza su nombre cada vez que se necesita referenciarlo.
 
Un operador: es un símbolo o palabra que significa que se ha de realizar cierta acción entre uno o dos valores que son llamados operandos.
 
Expresiones: Son representaciones de un cálculo necesario para la obtención de un resultado.
 
Son un conjunto de operadores y operandos que producen un valor.
Por ejemplo:      Cos (pi * X) + 12.56 * SQR(100)
 
 
Tipos de operadores:
 
  • Aritméticos: (su resultado es un número): potencia, * , / , mod, div, + , -

  • Relacionales: (su resultado es un valor de verdad): =, <, >, <=, >=, <>

  • Lógicos o Booleanos: (su resultado es un valor de verdad): not, and, or

  • Alfanuméricos: + (concatenación)

  • Asociativos: El único operador asociativo es el paréntesis ( ), el cual permite indicar en qué orden deben realizarse las operaciones. Cuando una expresión se encuentra entre paréntesis, indica que las operaciones que están dentro de ellos deben realizarse.


Operadores aritméticos:

 
Operadores de relación:
 
 



Operadores lógicos:
 


 
Funciones predefinidas:
 



Diagramas de Flujo


Los Diagramas de Flujo: son la representación gráfica de la solución algorítmica de un problema.  Para diseñarlos se utilizan determinados símbolos o figuras que representan una acción dentro del procedimiento.


Utilizan unos símbolos normalizados, con los pasos del algoritmo escritos en el símbolo adecuado y los símbolos unidos con flechas, denominadas líneas de flujo, que indican el orden en que los pasos deben ser ejecutados.
 
Para su elaboración se siguen ciertas reglas:

  • Se escribe de arriba hacia abajo y de izquierda a derecha
  • Siempre se usan flechas verticales u horizontales, jamás curvas
  • Se debe evitar cruce de flujos
  • En cada paso se debe expresar una acción concreta
  • Secuencia de flujo normal en una solución de problema
  • Tiene un inicio
  • Una lectura o entrada de datos
  • El proceso de datos
  • Una salida de información
  • Un final

Simbología para diseñar flujo gramas
 
 

 
Ventajas de usar diagramas de flujo
  • Rápida comprensión de las relaciones
  • Análisis efectivo de las diferentes secciones del programa
  • Pueden usarse como modelos de trabajo en el diseño de nuevos programas o sistemas
  • Comunicación con el usuario
  • Documentación adecuada de los programas
  • Codificación eficaz de los programas
  • Depuración y pruebas ordenadas de programas
 
Desventajas de los diagramas de flujo

  • Diagramas complejos y detallados suelen ser laboriosos en su planteamiento y diseño
  • Acciones a seguir tras la salida de un símbolo de decisión, pueden ser difíciles de seguir si existen diferentes caminos
  • No existen normas fijas para la elaboración de los diagramas de flujo que permitan incluir todos los detalles que el usuario desee introducir.
 
 

Ejemplo de diagrama de flujo:
 
 
 
 
Indica cuáles de los siguientes diseños son válidos según las reglas de construcción de flujogramas:
 




LENGUAJE C
PROGRAMACIÓN


 
 


 
 

 


 
Estructura de un programa en lenguaje C

 
Directivas de Librerías

En esta sección se escriben aquellas sentencias que proveerán herramientas útiles para desarrollar el programa.

Para el caso específico de lenguaje C, en esta sección se escriben los nombres de las galerías de encabezados que serán utilizadas (incluidas).

Se antecede a cada galería la instrucción #include y seguido de esta se escribe entre signos de menor qué y mayor que, el nombre de la galería.

Ejemplos de la sección de utilerías son las siguientes:
#include<stdio.h> #include<stdlib.h>
#include<conio.h> #include<string.h>
#include<ctype.h> #include<math.h>
#include<dos.h>
 
 Nota: En las instrucciones #include, sustituya los paréntesis por los símbolos "<" y ">"
  


La función main()

Todos los programas en lenguaje C deben comenzar con la función main()
 
Toda función debe retornar un valor, la función main() retorna un valor entero, por eso los programas deben terminar con un return 0;
 
 La función puede declararse como int main() o solo main(), las dos formas son validas.
 
Los comentarios: son líneas incluidas en un programa que no realizan ninguna acción, solo sirven para agregar explicaciones o documentar el programa.
 
Hay dos tipos de comentarios: de una línea y de varias líneas.
 
 /* */ Para comentarios cuando ocupan más de una línea de texto. Lo que se escriba entre estos dos

símbolos será ignorado por el compilador.
 
 // para comentarios en una única línea de texto.

 


Declaración de variables:  C requiere que se declaren las variables que se utilizarán en el desarrollo del programa. Estas se declaran precedidas por un palabra reservada que le indica al compilador el tipo de datos que se almacenará en la variable.
 

 =
 
 
Se pueden también declarar múltiples variables en la misma línea:
, ....
 
 
Así por ejemplo:
  
Int longitud; int valor=99;
Int valor1, valor2;
float salario, estatura;
 
 
 

Instrucciones del programa: en C se encuentran entre las llaves de inicio y fin de la funcion main().
 
Todas las instrucciones del programa deben finalizar con un punto y coma (;)
Ejemplo: Int edad;
 
La funcion printf() se utiliza como instrucción de salida.
 
La funcion scanf() se utiliza como instrucción de entrada de datos.
 
 
La instrucción system(“pause”) que es necesaria para que la pantalla se detenga temporalmente cuando corremos el programa, ya que si no ponemos esa instrucción, no veríamos lo que hace el programa porque mostraría rápidamente los resultados.
 
 
Esta instrucción se encuentra en la librería que deberá ser declarada en la cabecera del programa.
 

Entrada y Salida Estándar

La función printf()

La función printf permite escribir una lista de datos con un formato preestablecido. Acepta diferentes tipos de argumentos: carácter, valor numérico entero o real o cadena de caracteres, y los escribe según un formato especificado sobre la salida estándar. La forma de la función printf es:
printf ("formato", arg1, arg2, ..., argn);
 
Donde arg1 pueden ser constantes, variables o expresiones, y “formato” es una serie de caracteres en la cual se pueden encontrar dos tipos de datos: un mensaje o texto a escribir literalmente, y los símbolos especificadores del formato con el cual se van a escribir las variables dadas como argumentos.


Por ejemplo: printf ("Esto es un mensaje\n");
 
 
Escribe la cadena Esto es un mensaje seguida de un salto de línea (debido al \n)
 
Ejemplo de printf()


#include < stdio.h >
main()
{
int i; char letra; float f; char string[10]="hola";
i = 1; letra='a'; f = 3.15;
/* \n en el printf hace que salte de linea */
printf(" El número entero es %d\n", i);
printf(" El número real es %f\n",f);
printf(" La letras es %c\n", letra);
printf(" El string es %s\n",string);
system(“pause”);return 0;
}
 
 
Especificadores de formato:

Los especificadores de formato deben ir precedidos del signo %. Algunos de ellos son:
%c carácter (char)
%d número entero (int)
%ld número entero (long)
%f número real (float)
%lf número real (double)
%s cadena de caracteres
 
Por cada argumento a imprimir debe existir un especificador de formato, que indica el formato en el cual se va a mostrar el dato. Por ejemplo, siendo letra una variable de tipo char con el valor ‘A’, la instrucción
printf (“El código ASCII de %c es %d”, letra, letra);
  
Escribirá:
 
 
El código ASCII de A es 65
 
Otros ejemplos de printf:
printf (“\nEl cuadrado de %f vale %f”, x, x*x);
printf (“\nLa edad de %s es %d años”, “Juan”, edad);
printf (“\nSeno (%lf) = %lf\n”, x, sin(x));
 
La función printf puede emplearse sin argumentos, en cuyo caso sólo se imprimen los caracteres presentes en la cadena de formato.
 
 
Caracteres opcionales:
 
Entre el símbolo "%" y el carácter que especifica la notación a emplear se pueden insertar ciertos caracteres opcionales. Son los siguientes:
 
El signo (-) para que el dato se ajuste por la izquierda, en lugar de hacerlo por la derecha, que es lo establecido por defecto.

Un número que indica la longitud mínima en caracteres que tiene el campo donde se mostrará el dato. Los espacios hacen de caracteres de relleno.

Un punto decimal (.) seguido de una cifra que indica el número de dígitos tras el punto decimal de un dato real o el número mínimo de dígitos para un entero o el número máximo de caracteres de una cadena que serán impresos
 
Ejemplo de caracteres opcionales:

%8d imprime un número decimal (int) alineado por la derecha y en un campo de al menos ocho caracteres.
 
%-25s imprime una cadena de caracteres alineada por la izquierda y asegurando una longitud mínima de 25 caracteres (reserva al menos 25 espacios, si la longitud del valor a visualizar es mayor de 25 se visualizan todos).
 
%.6f imprime un número real (float) con un máximo de 6 cifras significativas en la parte fraccionaria.

 
La función scanf()
  
La función scanf permite leer valores desde la entrada estándar y almacenarlos en las variables que se especifican como argumentos. Éstas deben ir normalmente precedidas por el símbolo &. La sintaxis es:
scanf ("formato", arg1, arg2, ..., argn);
Donde debe haber tantos especificadores en la cadena de “formato” como variables en la lista de argumentos. Por ejemplo,
int n;
double x;
scanf ("%d%lf", &n, &x);
Para leer un valor de tipo int y otro de tipo double. Los valores se introducirán desde la entrada estándar separándolos por espacios o retornos de carro. En la cadena de formato aparecen especificadores de formato (los mismos que ya se han visto) pero nunca deben aparecer caracteres ordinarios.
 
 
#include < stdio.h >
main() {
int i; char c; float f; char string[10];
printf("Introduce la letra: "); scanf("%c",&c);
printf(" Introduce el número entero: "); scanf("%d",&i);
printf("Introduce el número real: "); scanf("%f",&f);
printf("Introduce el string: "); scanf("%s",&string);
printf("Los valores introducidos son: %c %d %f %s \n",c,i,f,string);
system(“pause”);return 0;
}
 

Ejemplo de uso de printf() y scanf()
 
Como ejemplo del uso de printf y scanf, sea un programa que lee dos números del teclado y calcula e imprime la suma de ambos:
 
 
/* Programa que lee dos números y los suma */
#include < stdio.h >
void main (void)
{
int a, b, suma;
printf ("\nIntroduzca a y b: ");
scanf ("%d%d", &a, &b);
printf ("\n a vale: %d; b vale %d", a, b);
suma = a + b;
printf ("\n\nLa suma de a y b vale: %d\n", suma);

 
 


 


No hay comentarios.:

Publicar un comentario