Presentación de PowerPoint - WordPress.com · 2015. 9. 8. · Palabras clave: no pueden ser...
Transcript of Presentación de PowerPoint - WordPress.com · 2015. 9. 8. · Palabras clave: no pueden ser...
Unidad II: Fundamentos de la Programación
Estructurada
Algoritmo, Estructuras y Programación I
Ing. Marglorie Colina
Estructura General de un Programa
Zona de ficheros de cabecera
de las librerías #include <....... . h> // h de Head
#include <....... . h>
Zona de prototipos de
funciones int Potencia (int x,y)
Zona de variables globales int valor;
float media_total;
Programa principal o
bloque principal
void main ()
{ // llave de inicio del programa
// código del programa
.......
.......
// fin del programa
}
Comentarios de una (1) sola línea
Comentarios de un Programa
Comentarios de un párrafo completo
// /*.....*/
/* Comentarios de un párrafo
completo sirven para
aclarar qué el programa o una parte
del programa */
Ejemplo: Ejemplo:
// Zona de variables globales
Inclusión de archivos
Las sentencias para hacer la inclusión son:
#include<nombre_archivo.h>
Ejemplos: #include <stdio.h>
#include <stdlib.h>
Variables
Los nombres de las variables en C pueden contener cualquier número de letras (se
incluye el símbolo de subrayado,“_”) o números, pero el primer carácter ha de ser,
necesariamente, una letra (o el símbolo de subrayado).
El formato para definir variables es el siguiente:
tipo lista_variables;
Ejemplos:
int p,q;
char c, v, x;
float inicial;
Ejemplos: variables inicializadas
int p=0;
float i= 2,5;
Constantes
NOTA: Observa que no hay operador de asignación entre el nombre de la
constante y su valor y que la línea no acaba con punto y coma
Definidas con la directiva “define”
Una constante es, en principio, una variable cuyo valor no puede ser modificado. Las
constantes se definen con la directiva #define. Así:
#define CONSTANTE valor
Cada línea #define solo puede contener el valor de una constante.
Por ejemplo, podemos definir los valores aproximados de π y del número e así:
#define PI 3.1415926535897931159979634685442
#define E 2.7182818284590450907955982984276
Operadores
Operadores aritméticos Operadores Lógicos Operadores relacionales
x=5; y=++x; -> y=6, x=6 Incremento y luego asignación
x=5; y=x++; -> y=5, x=6 Asignación y luego incremento
Ejemplos:
a>= b -> a mayor o igual a b
a != b -> a distinto a b
El operador de asignación es el operador “=”. El formato es el siguiente:
identificador = expresión;
Se permite hacer asignación múltiple del tipo: i = j = 5.9;
Instrucciones de Asignación
Caracteres de Control
Todas las funciones de E/S en C, ya sean por el dispositivo estándar (pantalla y
teclado), o por fichero, se encuentran en la librería estándar<stdio.h>
Estas funciones son:
printf( ) Salida de datos con formato
scanf( ) Entrada de datos con formato
Entradas y Salidas
función printf ( ): Escribe una serie de caracteres en la salida estándar (pantalla).
float pi=3.141596; // declara y asigna a la vez
printf(“El número pi vale %f ”, pi);
función scanf ( ): Lee datos de la entrada estándar (teclado), los interpreta y los
almacena en los argumentos.
scanf("%i", &edad);
scanf("%i %f %c", &a, &b, &x);
Ejemplos:
Ejemplos:
Palabras clave: no pueden ser utilizadas como nombres de variable ni de función. La
lista de palabras clave es:
Lenguaje C
Generalidades
Toda sentencia simple debe terminar en punto y coma.
Toda sentencia compuesta (bloque de sentencias simples) irá entre llaves, “{” al
principio, y “}” al final.
Las palabras claves deben escribirse siempre en minúsculas. En C las mayúsculas y las
minúsculas son diferentes: else es una palabra clave; ELSE no. Las funciones exit() y
EXIT() son distintas.
En C existen cinco tipos básicos de datos:
Tipos Datos Básicos
Dos para datos enteros
(char e int)
tres para reales
(float, double y long double)
los modificadores de tamaño (short, long), y/o
los modificadores de signo (signed, unsigned).
Con los tipos enteros se pueden usar
además
Tipos Datos Básicos
if(condición)
{
sentencias_si
}
else
{
sentencias_no
}
Instrucciones de Condición
Simple
if(condición_1)
{
sentencias_si_primera_condición
}
else if(condición_2)
{
sentencias_si_segunda_condición
}
else
{
sentencias_no_segunda_condición
}
Anidadas
#include<stdio.h>
#include<stdlib.h>
int a, b;
void main()
{
printf("\n Ingrese 1er Numero: ");
scanf("%d", &a);
printf("\n Ingrese 2do Numero: ");
scanf("%d", &b);
if(a==b)
{
printf("\n>>>>Los Números Son Iguales<<<<\n");
system("pause");
}
else if(a<b)
{
printf("\n>>%d<< Es Menor que >>%d<<\n", a, b);
system("pause");
}
else
{
printf("\n>>%d<< Es Mayor que >>%d<<\n", a, b);
system("pause");
}
}
1. Ejercicio que permite ingresar dos valores y verifica si non iguales o quien es mayor o menor
Estructura de Repetitivas
for
El formato general es:
for (inicialización; condición; incremento) sentencia;
La inicialización normalmente
es una sentencia de asignación
que se utiliza para iniciar la
variable de control del bucle.
La condición es una
expresión relacional que
determina cuando finaliza el
bucle.
El incremento define
como cambia la variable de
control cada vez que se
repite el bucle.
Estas tres secciones principales deben ser separadas por punto y coma (“;”).
Es un método para ejecutar un boque de sentencias un numero fijo de veces
Estructura de Selección
switch
Es una sentencia de selección múltiple, que compara sucesivamente el valor
de una expresión con una lista de constantes enteras o de caracteres. Cuando se
encuentra una correspondencia, se ejecutan las sentencias asociadas con la
constante. Esta estructura permite seleccionar un bloque de sentencias en
función del valor de una expresión (típicamente una variable).
Estructura de Selección
switch
default
Palabras reservadas que utiliza
switch
case
break
Palabra reservadas para
indicar que se realizara esta
estructura e selección se
ubica en el inicio indicando
donde comienza
Se utiliza para indicar
los casos existentes en
la estructura
Se utiliza para indicar
el final de cada casos
existente en la
estructura
Es opcional se utiliza para
ejecutar sentencias
cuando no se realiza
ninguno de los casos
switch (opcion)
{
case 1: ...;
break;
case 2: ...;
break;
case 5: ...;
break;
default: ....;
}
switch
Sintaxis
switch (opcion)
{
case „a‟: ...;
break;
case „b‟: ...;
break;
case „c‟: ...;
break;
default: ....;
}
Estructura de Selección
#include<stdio.h>
#include<stdlib.h>
int a, operacion, opcion;
void main()
{
printf("\nIngrese Valor:");
scanf("%i", &a);
operacion=a;
printf("\n********** Menu **********");
printf("\n>>>>>> 1. Sumar 10 veces el numero ingresado");
printf("\n>>>>>> 2. Multiplicar 5 veces el numero ingresado");
scanf("%i", &opcion);
switch(opcion)
{
case 1:
{
for(int x=0; x<10; x++)
{
operacion=operacion + a;
printf("\nIteracion Nro %i Resultado %i", x, operacion);
}
}break;
case 2:
{
for(int x=0; x<5; x++)
{
operacion=operacion * a;
printf("\n Iteracion Nro %i Resultado %i", x, operacion);
}
}
default: printf("\nERROR..!!Opcion Incorrecta");
}system("pause");
}
1. Ejemplo del uso del for y el switch
Estructuras Iterativas
La sentencia o grupo de sentencias que se repite en un bloque se denomina
cuerpo del ciclo y cada repetición del cuerpo del ciclo se llama iteración del
ciclo.
Un ciclo es cualquier construcción de programa que repite una sentencia o
secuencia de sentencias un número de veces.
Estructuras Iterativas
While
tiene
condición
Expresión
lógica
Cuerpo o
sentencias
while (condición )
sentencia;
La posición de esta condición del ciclo es delante del cuerpo del ciclo y significa
que un ciclo while es un ciclo de preverificación de modo que cuando se ejecuta
el mismo, se evalúa la condición antes de que se ejecute el cuerpo del ciclo.
Estructuras Iterativas
While
Sintaxis
while (condición )
{
bloque de sentencias;
}
Estructuras Iterativas
Ejemplo:
1. Programa que pide 10 números y calcula y muestra la suma de todos. #include <stdio.h> #include <stdlib.h> int suma=0, cont= 10, num; void main() { while (cont > 0) { printf(“Ingrese Numero:”); scanf(“%d”, &num); suma = suma + num; cont--; } printf("La suma de los números proporcionados es %d" , suma); system(“pause”); }
Estructuras Iterativas
Ejemplo:
2. Obtener el promedio de calificaciones de un grupo de 20 estudiantes
#include <stdio.h> #include <stdlib.h> int total, contador, calif; float promedio; void main() { total = 0; contador = 1; while (contador <= 20 ) { printf(“Ingrese Calificacion”); scanf(“%d”, &calif); total = total + calif; contador ++; } promedio = total / 20.0; printf(“El promedio es: %f”, promedio); system(“pause”); }
Estructuras Iterativas
do – while
Especifica un
ciclo condicional
Se ejecuta al
menos una vez
Ejecuta
sentencias y
luego evalúa la
condición
Tiene una
condición de
control
Estructuras Iterativas
Do- While
Se realizan las sentencias y se verifica la condición, mientras sea verdadera se sigue ejecutando; al momento de ser falsa termina el ciclo. Dado que la condición se revisa al final del ciclo las sentencias se realizan al menos una vez a diferencia del while
Sintaxis
do sentencia; while(condición );
do { bloque de sentencias; }while(condición );
Estructuras Iterativas
Ejemplo:
#include <stdio.h> int num; int cant = 0, x; void main() { printf(“Ingresa Numero”); scanf(“%d”, &num); x = num; do { x = x / 10; cant++; } while (x > 0); printf(“Tiene %d digitos”, cant); }
1. Para conocer cuantos dígitos tiene el numero ingresado