Selecciona el Idioma

jueves, 27 de febrero de 2014

Manual Programación C

Los lenguajes de programación podemos dividirlos en :Lenguajes de Alto Nivel y Lenguajes de Bajo Nivel.
Los de bajo nivel, son más cercanos al ordenador.Eso hace que sean más difíciles de aprender.El ordenador sólo entiende 0 y 1. También conocidos como :Datos binarios
Antes de poner en práctica los lenguajes de alto nivel es conveniente:
  • Crear Algoritmo en Pseudocódigo
Es como realizar un boceto del programa, antes de ponerse a picar código, eso facilita el trabajo, especialmente si estamos empezando a programar y desconocemos todo el lenguaje.
El Lenguaje C, se puede crear desde varios programas (Dev-c++,Eclipse,Gedit...),ha de estar bien tabulado y seguir una estructura:
  • Bibliotecas (#include ...)
  • Variables
  • Funciones y Procedimientos
  • Bucles o Condicionales
  • Terminar con un: system("PAUSE");

Existen diferentes tipos de datos (numéricos,carácteres,cadenas...) para definirlos en las variables se hace:
  • int numero; (si es de tipo entero)
  • float numero; (si es tipo real)
  • double numero; (si es real muy largo)
  • char c; (si es tipo carácter)
  • chat c [10]; (si es tipo cadena de 10 carácteres)
  • int c [10]; (si es un array de 10 numeros enteros)

A la hora de guardar los datos de estas variables lo haremos con:
  • scanf("%d",&numero); (si es de tipo entero)
  • scanf("%f", &numero); (si es tipo real)
  • scanf("%lf", &numero); (si es real muy largo)
  • scanf("%c", &c); (si es tipo carácter)
  • scanf("%s", c); (si es tipo cadena de 10 carácteres)
  • scanf("%d",&c); (si es un array de 10 numeros enteros)

Para printarlo por pantalla sería por ejemplo:
printf("resultado=%d\n",n);
En el caso de un entero de variable tipo entero con nombre n, el \n lo que hace es un salto de linea.
La Asignación de valores a una variable se hace así:
nombrevariable=560;
Mientras que si se tratara de un condicional sería así:
if (nombrevariable==560){
Argumentos
};
El programa debe crearse dentro del main() o, tener funciones y/o procedimientos que serán llamados a través del main().
Podemos insertar comentarios con // ( si el comentario ocupa solo una linea).
/* comentarios*/ (si ocupa más de una linea).
Para incrementar o decrementar el valor de una variable, por ejemplo si la usamos como variable contador se puede hacer de varias formas:
  • a++; o a=a+1;
  • a--; o a=a-1;

Para ver exactamente lo que ocupa una variable se hace con sizeof:
Para convertir una variable float (por ejemplo) en una int (por ejemplo):
En los condicionales (if), podemos usar carácteres como: <,>,<=,>=,!=,==
Que significan: menor, mayor,menor o igual, mayor o igual , diferente de,igual a .
Los if pueden ser anidados, NO son bucles, solo se harán una vez a menos que se encuentren dentro de bucles como:while , do-while
Los condicionales if-else , si no hacen el primer condicional harán el siguiente.En los condicionales también se pueden añadir Operadores Lógicos (&&, ||, !)
Que && es para que se cumplan las dos condiciones , || para que se cumpla una u otra y ! para que no se cumpla ninguna.
Normalmente, además del Pseudocodigo se suelen hacer Diagramas de Flujo para representar un programa en C o cualquier otro Lenguaje .
Otro elemento es el switch (variable) significa Encasode (variable).
Hace diferentes casos (respuestas) dependiendo del valor de una variable introducida. NO es un bucle y por tanto solo se hará una vez, a menos que este dentro de una estructura repetitiva, como hemos dicho antes.
Las Estructuras Repetitivasson While y Do-While. Significan Mientras... y Repetir-Mientras... Son bucles y dentro de ellos se añade el código a ejecutar tantas veces como sea necesario.
Ahora un ejemplo de Repetir-Mientras...:
Después tenemos los For, que también son bucles. por ejemplo:
  • for (i=0;i<=10;i++)
  • significa : para (i=0;mientras i<=10;hacer i++)
Esto repite un proceso que va a ir dentro del bucle tantas veces como vale i
También existen for anidados para matrices o ordenar arrays, es su uso más convencional, pero también se necesitan para crear pequeños dibujos a partir de arrays bidimensionales o tridimensionales.
Con un break; podemos terminar los bucles o condicionales.Se usan también en los Switch para pasar al siguiente case.
Mientras que los continue; sirven para forzar pasar a la siguiente acción en los condicionales .
Algunos Códigos Útiles:
putchar ('A'); Formas sencillas de poner un solo carácter por pantalla.
putchar (x) Formas sencillas de poner un solo carácter por pantalla (si utilizamos una variable).
letra=getchar(); Almacena un valor introducido, en la memoria.
gets(texto); Para escribir un texto por pantalla sin parar en el primer espacio.
puts(texto); Para escribir un texto por pantalla sin parar en el primer espacio.
strcpy (destino,origen);Asigna a una cadena el valor de otra (copiar)
strcat (destino,origen);Añade una cadena al final de otra
strcmp (cad1,cad2);Compara cadenas
sscanf ("%s",cadena) Parecido al scanf pero los datos no se leen desde el teclado sino desde una cadena de texto
struct - Son las Estructuras , se crean fuera del main(), y después son en el donde se crea los registros necesarios.
Funciones y Procedimientos:
Son pequeños programas fuera del main () que después serán llamados por este para ejecutar los datos. Las funciones retornan un solo valor , mientras que los procedimientos no retornan nada.
Las funciones pueden ser de tipo (int,double,float,char...) (su retorno tendrá que ser de este mismo tipo). Mientras que los procedimientos siempre serán de tipo Void. Ambos pueden contener parámetros.
Las variables que estos contienen se denominan locales, estas solo podrán ser usadas por el prodecimiento o función que las contenga. Pero también existen las variables globales, se declaran fuera del main() y fuera de cualquier función o procedimiento. Estas variables, si podrán ser usadas en cualquier momento del programa.
Para interrumpir un programa en cualquier momento podemos ejercer las órdenes:
  • exit(0);
  • return(0);
exit80) necesita la biblioteca #include para ejecutarse. Ambos funcionarán si no ha habido ningún error.
Para Debugar o Depurar el programa DEV-c++ incluye una herramienta de muy fácil uso, que nos alertará de los errores que hay que corregir para que el programa funcione bien. Solo hemos de poner un punto de interrupción y después compilar y Debugar.
Para cambiar los colores del printf es necesaria la funcion : SetConsoleTextAttribute (GetStdHandle (STD_OUTPUT_HANDLE),9)
donde el último numero (9) corresponde a un color. Por ejemplo para verlo tenéis que hacer algo así:
#include <#stdlib.h>
#include <#stdio.h>
#include <#time.h>
#include <#Windows.h> 



int functotal(int min, int max){
 min=0;
max=5;
int total=0;
int res;

printf("Total de compras  en dolares:? \n");
scanf("%d",&total);
if (total <100 0:="" 10="" 1:="" 20="" 2:="" 30="" 3:="" 4:="" 50="" :="" amarilla:="" aplicable="" azul="" blanca:="" bola="" break="" case="" de="" descuento="" dolares="" else="" etstdhandle="" hay="" int="" lo="" main="" n="" num1="" num2="" o="" oooooh="" otra="" pre="" printf="" promocion="" res="" return="" roja:="" sera="" setconsoletextattribute="" siento="" srand="" switch="" system="" time="" total="functotal(num1,num2);" verde:="" vez="">

Y se verá algo así :

Os dejo este videotutorial aquí. Es un ejemplo para obtener un resultado aleatorio, en este caso. El ganador para un concurso.






Espero que os sirva de ayuda,

para más info suscribete a Desy Repara

No hay comentarios:

Publicar un comentario