Programacion
Primer parcial: 16/2/2009
Segundo parcial: 02/03/2009
Recuperatorio: 04/03/2009
Final: 05/03/2009
02/02/2009
Estructura básica de un programa
#include
int main () {
.........; /* Área de declaración de datos */
.........;
.........; // Área de instrucciones
// Esto es un comentario
/* Este también, pero va encerrado */
printf(“Hola mundo”); \n //la contrabarra-n sirve para un salto de línea
print f(“Hola de nuevo”);
// \t es un tabulador
// \a es el bell (parlantes)
// \” imprime comillas
return 0;
}
Variables
Nombre: Se pueden usar letras, números y guión bajo. No puede empezar con un número. No se pueden utilizar las palabras reservadas (return, print, etc.).
Tipo de dato: int, char, flout, double o void.
Valor#include
Int main (){
Int a;
Int b, c;
float pi=3,1416;
char letra;
a=0;
b=3;
c=5;
letra=’a’;
return 0;
}
#include
int main (){
int a=2;
float pi;
pi=3,1416;
printf(“El número %f multiplicado por %d es igual a %f \n”, pi, a, pi*a);
return 0;
}
Especificadores de conversión
%d: Nº enteros
%f: Nº reales
%c: Caracteres
%%: Para imprimir el %
Prinff(“El número %6.2fmultiplicado por %04d es igual a %8.2f \n”, pi, a, pi*a);
Output: El número _ _ 3.14 multiplicado por 0002 es igual a _ _ _ _ 6,28
En el %2.6f el primer número determina la cantidad de caracteres, el que sigue al punto determina la cantidad de decimales. En el segundo, como ponemos el 0 delante del 4, los espacios se rellenan con ceros, pero esto sólo sirve para el 0.
Lectura de variablesUtilizamos el scanf para leer las variables:
scanf(, );
int x;
printf(“Ingrese un número”);
scanf(“%d”, &x);
scanf(“%d-%d-%d”, &dia, &mes, &anio);
Operadores aritméticos
+ Suma
- Resta
* Multiplicación
/ División
% Módulo (resto)
Divisiones con decimales
float x;
int a=10;
x=a/3;
printf(“%f”,x), //output: 3
float x;
int a=10;
x=a/3.0;
printf(“%f”,x), //output:3.33…
float x;
int a=10;
x=(float) a/3;
printf(“%f”,x), //=>3.33…
resto=a%3; //output: a=1 (3*3=9 +1=10)
Operadores de asignación adicionales
+= a+=b; a=a+b;
-= …
+= x*=10;x=x*10;
/= …
%= …
Operadores incrementales
++
--
int a;
a=3;
a++; //es lo mismo que hacer a=a+1 y lo mismo que a+=1
Estructuras de control
Las estructuras de control pueden sersecuenciales, alternativas o condicionales (if),
Alternativas o secuencias:
La más común es el IF.
If(){
…………;
…………; //esto se realiza sólo si se cumple la condición
…………;
}
Formato 1
If(){
…………;
…………; //esto se realiza sólo si se cumple la condición
…………;
}else{
…………;
…………; //esto se realiza en caso de que no se cumpla
…………;
}
Formato 2
Operadores relacionales
= =Igual (siempre es doble, uno solo es para asignar)
> Mayor
< Menor
>= Mayor o igual
Falso
!0 => Verdadero
a=3;
if(a>0){
printf(“Mayor que cero”); // puedo evitar las llaves
If (a)
printf(“distinto de cero”);
Operadores lógicos
&&: Y (and)
| |: o (or)
!: no (not)
If (a>5&&b>5)
printf(“Ambos números son mayores que 5”);
Operador condicional
? :
b=(a>10)?a%10:a;/* si a NO es mayor que 10, devuelve “a”. Si a ES mayor que 10, entonces devuelve a%10. */
Switch
switch(){
case :
……….;
.………;
……….;
break;
case :
……….;
.………;
……….;
break;
default:
……….;
.………;
……….;
break;
}
switch(mes){
case 1:
printf(“Enero”);
break;
case 2:
printf(“Febrero”);
break;
case 3:
printf(“Marzo”);
break;case 4:
printf(“Abril”);
break;
…….
default:
printf(“Mes inválido”);
break;
}
Programa que imprime el mes del año de acuerdo con su número
switch(mes){
case 1:case 2:case 3:case 4: case 5: case 6:
printf(“primer semestre”);
break;
case 7: case 8: case 9: case 10: case 11: case 12:
printf(“segundo semestre”)
break;
}
Programa que imprime el numero de semestre...
Regístrate para leer el documento completo.