Estructuras de control

Slides:



Advertisements
Presentaciones similares
Laboratorio Lenguaje de Programación ING2101
Advertisements

ESTRUCTURAS DE CONTROL
Archivos de Texto. Introducción Los archivos son una secuencia de bits que se guarda en el disco duro. La ventaja de utilizar archivos es que los datos.
Estructura selectiva anidada
Programación Básica con NQC Pedro F. Toledo – Patricio Castillo 18/08/2006.
Estructuras de decisión en C
Profesora: Nelwi Báez P
MANUAL EXPRESS DE C J.M.sevilla.
Fundamentos de la Programación Estructurada
Variables Prof. Gonzalo Pastor.
Primer Programa en C.
EJERCICIOS DE PROGRAMACION
INFORMATICA I Funciones CLASE 13.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
ESTRUCTURA DEL LENGUAJE C
CICLOS EN C.
Aprende C en una lluviosa tarde de domingo (en algo más de un par de horas) Sintaxis del lenguaje C para implementar un programa imperativo.
Una breve introducción
SubRutinas Se pueden usar subrutinas cuando se necesita el mismo trozo de código en distintos lugares del programa. En esos casos se escribe una subrutina.
La estructura básica de los programas en java, algo a tener en cuenta y que debemos recordar siempre es el archivo debe llevar el nombre de la clase con.
Funciones y procedimientos
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
Ingeniero Anyelo Quintero
Estructuras de Control de Repetición
Programa “Coordenadas” Ing. Arturo Díaz Vargas Departamento de Sistemas División de Ciencias Básicas e Ingeniería UNIVERSIDAD AUTONOMA METROPOLITANA.
Archivos Programación.
Programación de Computadores
Lenguaje C.
Semana 5 Subprogramas..
Estructuras de Iteracion (Repetitivas ) while , for,, do-while
CI TEORIA semana 4 Estructura Algorítmica: SELECCIÓN
Control de flujo: Bucles
Lenguaje C Ing. Sonia Alexandra Pinzón Nuñez
Capítulo 1 “Elementos de Programación”
Introducción a la Programación
Sesión 5 Sentencias de Selección y repetición Prof:Eridan Otto Programación de Computadores Lenguaje Pascal.
UNIVERSIDAD PERUANA DE LAS AMERICAS INGENIERIA DE COMPUTACION Y SISTEMAS PROGRAMACION I ING. PEDRO BENITES TOLEDO Programación I Capitulo IV : Estructuras.
Informática Tema 5 - Estructuras de Control Estructuras de Repetición.
COMPUTACION 2009 C lase 4 Programa PASCAL SENTENCIAS DATOS Expresiones Tipos Declaración de variables Declaración de variables Asignación Entrada/Salida.
Clase 2 Gabriela Araya Baez.  Permite la ejecución de un bloque de instrucciones, mediante la verificación de una condición. Si esta no se cumple (else),
Using System; using System.IO; // Para StreamWriter public class Creacionachivo { public static void Main() { StreamWriter archivo; archivo = File.CreateText("prueba.txt");
EXPRESIONES Y SENTENCIAS
Estructuras de Control.
Programación Básica con “NQC” Pedro F. Toledo – Patricio Castillo 18/08/2006.
Tema ‧ Comando - while Repeticiones. Comando while ‧ Un ciclo es cualquier construcción de programa que repite una sentencia ó secuencia de sentencias.
Estructuras de Repetición (Hacer-Mientras)
Vamos a tratar algunos temas que es necesario conocer a la hora de administrar un sistema informático y que nos van a ser útiles sin importar el sistema.
Pelando la cebolla 1. Aquí discutiremos lo necesario del lenguaje necesario para implementar una metodología que llamo “pelando la cebolla”. Permite abordar.
INTRODUCCION A LA PROGRAMACION
LENGUAJE “C” Programación.
Fundamentos de Programación
Se pueden incluir comentarios en cualquier parte de un programa pero deben delimitarse con llaves o con paréntesis y asterisco:
El lenguaje de programación C - Control de flujo y bucles -
Introducción al lenguaje PROCESSING para ARDUINO
Estructuras de Decisión
Sentencia Condicional
CICLOS EN C – PARTE 3.
Objetivos del tema. Hemos visto lo que es la estructura de un programa, los datos, que esos datos en realidad se convierten en variables de distinto.
Desarrollador Profesional de Juegos Programación III Unidad II Trabajando con bloqueo de datos.
ESTRUCTURA DE CONTROL REPETITIVAS: WHILE, DO… WHILE
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
Desarrollador Profesional de Juegos Programación III Unidad II introducción a Mutex Secciones críticas.
TIPOS DE DATOS Estructuras de control y repetición PARCIAL III.
PROGRAMACIÓN Grupo de Modelamiento de Sistemas
PARCIAL 3. CADENAS Y CARACTERES PARA PODER DISTINGUIR LOS DATOS DE TIPO CARACTER (CHAR), ESTOS SE ENCIERRAN EN COMILLAS SIMPLES. LOS DATOS DE TIPO CARÁCTER.
Page 1 Ciclo de Estructuras de Repetición Carlos Bautista García Unidad VI PROG 2270L.
Tema 8: Programación estructurada Introducción La importancia del conocimiento de programación es mucho mayor de lo que se piensa. Aprender a programar.
Entrada y Salida en C++, Estructuras de Control Prof. Manuel B. Sánchez.
Estructuras Repetitivas Consideraciones. Estructuras Repetitivas  Son aquellas que van a ejecutar un número determinado de veces una instrucción o un.
Transcripción de la presentación:

Estructuras de control Profesora: Nelwi Báez

TIPOS ESTRUCTURAS DE SELECCIÓN IF IF….ELSE ESTRUCTURAS REPETITIVAS WHILE DO… WHILE FOR

IF La primera construcción que usaremos será "si ... entonces ...". El formato en C es: if (condición) sentencia; /*---------------------------*/ #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escribe un numero: "); scanf("%d", &numero); if (numero>0) printf("El numero es positivo.\n"); system("pause"); } IF Nota: para comprobar si un valor numérico es mayor que otro, usamos el símbolo “>”, como se ve en este ejemplo.Para ver si dos valores son iguales, usaremos dos símbolos de “igual”: if (numero==0). Las demás posibilidades las veremos algo más adelante. En todos los casos, la condición que queremos comprobar deberá indicarse entre paréntesis.

Ejercicio: Crear un programa que pida al usuario dos números enteros y diga cual es el mayor de ellos.

If y sentencias compuestas La "sentencia" que se ejecuta si se cumple la condición puede ser una sentencia simple o una compuesta. Las sentencias compuestas se forman agrupando varias sentencias simples entre llaves ( { y } ):

Ejemplo #include <stdio.h> #include <stdlib.h> int main() En este caso, si el número es positivo, se hacen dos cosas: escribir un texto y luego... ¡escribir otro! (Claramente, en este ejemplo, esos dos “printf” podrían ser uno solo; más adelante iremos encontrando casos en lo que necesitemos hacer cosas “más serias” dentro de una sentencia compuesta) #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escribe un numero: "); scanf("%d", &numero); if (numero>0) printf("El numero es positivo.\n"); printf("Recuerde que también puede usar negativos.\n"); system("pause"); } /* Aqui acaba el "if" */ } /* Aqui acaba el cuerpo del programa */

!= No igual a (distinto de) Recordar: El símbolo de “menor que” también es sencillo, pero los demás son un poco menos evidentes, así que vamos a verlos: Operadores relacionales: <, <=, >, >=, ==, != Hemos visto que el símbolo “>” es el que se usa para comprobar si un número es mayor que otro. < Menor que > Mayor que <= Menor o igual que >= Mayor o igual que == Igual a != No igual a (distinto de)

if-else #include <stdio.h> #include <stdlib.h> int main() Podemos indicar lo que queremos que ocurra en caso de que no se cumpla la condición, usando la orden “else” (en caso contrario), así: #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escribe un número: "); scanf("%d", &numero); if (numero>0) printf("El número es positivo.\n"); else printf("El número es cero o negativo.\n"); system("pause"); }

Podríamos intentar evitar el uso de “else” si utilizamos un “if” a continuación de otro, así: #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escribe un número: "); scanf("%d", &numero); if (numero>0) printf("El número es positivo.\n"); if (numero<=0) printf("El número es cero o negativo.\n"); system("pause"); }

Otra forma: #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escriba un número: "); scanf("%d", &numero); if (numero < 0) printf("El número es negativo.\n"); else if (numero == 0) printf("El número es cero.\n"); printf("El número es positivo.\n"); system("pause"); } Otra forma:

Operadores lógicos: &&, ||, ! Estas condiciones se puede encadenar con “y”, “o”, etc., que se indican de la siguiente forma: if ((opcion==1) && (usuario==2)) ... if ((opcion==1) || (opcion==3)) ... if ((!(opcion==opcCorrecta)) || (tecla==ESC)) ... (Suponiendo que ESC fuera una constante ya definida con anterioridad).

Ejemplo #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("2==3 vale %d\n", 2==3); /* Escribe 0 es decir falso*/ printf("2!=3 vale %d\n", 2!=3); /* Escribe 1 es decir verdadero*/ system("pause"); }

Nota: #include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Escribe un número: "); scanf("%d", &numero); if (numero!=0) /* Comparación normal */ printf("El número no es cero.\n"); if (numero) /* Comparación “con truco” */ printf("Y sigue sin ser cero.\n"); system("pause"); } En este ejemplo, la expresión “if (numero)” se fijará en el valor de la variable “numero”. Si es distinto de cero, se considerará que la condición es correcta, y se ejecutará la sentencia correspondiente (el “printf”). En cambio, si la variable “numero” vale 0, es considera que la condición es falsa, y no se sigue analizando. En general, es preferible evitar este tipo de construcciones. Resulta mucho más legible algo como “if (numero!=0)” que “if(numero)”.

Estructuras repetitivas

while while (condición) sentencia; Si queremos hacer que una sección de nuestro programa se repita mientras se cumpla una cierta condición, usaremos la orden “while”. Esta orden tiene dos formatos distintos, según comprobemos la condición al principio o al final. En el primer caso, su sintaxis es : Es decir, la sentencia se repetirá mientras la condición sea cierta. Si la condición es falsa ya desde un principio, la sentencia no se ejecuta nunca. Si queremos que se repita más de una sentencia, basta agruparlas entre { y }. while (condición) sentencia;

#include <stdio.h> #include <stdlib.h> int main() { int numero; printf("Teclea un número (0 para salir): "); scanf("%d", &numero); while (numero!=0) if (numero > 0) printf("Es positivo\n"); else printf("Es negativo\n"); printf("Teclea otro número (0 para salir): "); system("pause"); } Un ejemplo que nos diga si cada número que tecleemos es positivo o negativo, y que pare cuando tecleemos el número 0:

do ... while Este es el otro formato que puede tener la orden “while”: la condición se comprueba al final. El punto en que comienza a repetirse se indica con la orden “do”, así: do sentencia; while (condición) Al igual que en el caso anterior, si queremos que se repitan varias órdenes (es lo habitual), deberemos encerrarlas entre llaves.

#include <stdio.h> #include <stdlib.h> int main() { int valida = 711; int clave; do { printf("Introduzca su clave numérica: "); scanf("%d", &clave); if (clave != valida) printf("No válida!\n"); } while (clave != valida); printf("Aceptada.\n"); system("pause"); Como ejemplo, vamos a ver cómo sería el típico programa que nos pide una clave de acceso y nos nos deja entrar hasta que tecleemos la clave correcta. Eso sí, como todavía no sabemos manejar cadenas de texto, la clave será un número:

for (valorInicial; CondiciónRepetición; Incremento) Esta es la orden que usaremos habitualmente para crear partes del programa que se repitan un cierto número de veces. El formato de “for” es : for (valorInicial; CondiciónRepetición; Incremento) Sentencia;

#include <stdio.h> #include <stdlib.h> int main() { int contador; for (contador=1; contador<=10; contador++) printf("%d ", contador); system("pause"); } Nota: Recordemos que “contador++” es una forma abreviada de escribir “contador=contador+1”, de modo que en este ejemplo aumentamos la variable de uno en uno.

Los bucles “for” se pueden anidar (incluir uno dentro de otro), de modo que podríamos escribir las tablas de multiplicar del 1 al 5 con: #include <stdio.h> #include <stdlib.h> int main() { int tabla, numero; for (tabla=1; tabla<=5; tabla++) for (numero=1; numero<=10; numero++) printf("%d por %d es %d\n", tabla, numero, tabla*numero); system("pause"); }

Otro ejemplo: #include <stdio.h> #include <stdlib.h> int main() { char letra; for (letra='a'; letra<='z'; letra++) printf("%c", letra); system("pause"); }

#include <stdio.h> #include <stdlib.h> int main() { int i; for (i=0; i<=10; i++) { if (i==5) break; printf("%d ", i); system("pause"); } Sentencia break: termina el bucle Podemos salir de un bucle “for” antes de tiempo con la orden “break”: El resultado de este programa es: 0 1 2 3 4 (en cuanto se llega al valor 5, se interrumpe el “for”, por lo que no se alcanza el valor 10).

y ahora a programar.!!!!¡¡¡¡¡¡ Éxito