Anda di halaman 1dari 8

Curso : Algoritmos I

FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Instruccin de alternativa simple


La alternativa simple se crea con la instruccin si (en ingls if). Esta instruccin evala una determinada expresin lgica y dependiendo de si esa expresin es verdadera o no se ejecutan las instrucciones siguientes. Funcionamiento: si expresin_lgica entonces instrucciones fin_si

Esto es equivalente al siguiente diagrama de flujo:

Las instrucciones slo se ejecutarn si la expresin evaluada es verdadera.

1. Realizar Un Programa que determine que un nmero ingresado es un nmero negativo.


Inicio

Inicio Leer numero1 Si numero1 < 0 entonces Escribir Numero Negativo Fin_si

Ingresar Numero 1

Numero < 0

no

si Escribir Numero Negativo

Fin

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Ordenar 3 nmeros de menor a mayor con Instruccin de alternativa simple

#include<iostream.h> #include<conio.h> //****************************/ /* */ /* */ //****************************/ int main() { /* Declarando variables*/ int num1,num2,num3,orden; cout<<"Ingresa N 1: "; cin>>num1; cout<<"Ingresa N 2 "; cin>>num2; cout<<"Ingresa N 3 "; cin>>num3; cout<<"*********************** \n"; cout<<"orden de menor a mayor \n"; /*Ordenar*/ if(num1>num2)

{ orden=num1; num1=num2; num2=orden; } if(num1>num3) { orden=num1; num1=num3; num3=orden; } if(num2>num3) { orden=num2; num2=num3; num3=orden; } cout<<"Orden \n"<<num1<<","<<num2<<","<<num3<<endl; cout<<"Presiones una tecla para finalizar"; getch(); return 1; }

Instruccin de alternativa doble


Se trata de una variante de la alternativa en la que se ejecutan unas instrucciones si la expresin evaluada es verdadera y otras si es falsa. Funcionamiento: si expresin_lgica entonces instrucciones //se ejecutan si la expresin es verdadera si_no instrucciones //se ejecutan si la expresin es falsa fin_si Slo se ejecuta unas instrucciones dependiendo de si la expresin es verdadera. El diagrama de flujo equivalente es:

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Hay que tener en cuenta que se puede meter una instruccin si dentro de otro si. A eso se le llama alternativas anidadas. Ejemplo:
si a5 entonces escribe(apto) si a5 y a<7 entonces escribe(nota:aprobado) fin_si si a7 y a<9 entonces escribe(notable) si_no escribe(sobresaliente) fin_si si_no escribe(suspenso) fin_si

Al anidar estas instrucciones hay que tener en cuenta que hay que cerrar las instrucciones si interiores antes que las exteriores. Eso es una regla bsica de la programacin estructurada:

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Programa que ordena 3 numeros


#include<iostream.h> #include<conio.h> //****************************/ /* */ /* */ //****************************/ int main() { /* Declarando variables*/ int num1,num2,num3,orden; cout<<"Ingresa N 1: "; cin>>num1; cout<<"Ingresa N 2 "; cin>>num2; cout<<"Ingresa N 3 "; cin>>num3; cout<<"*********************** \n"; cout<<"orden de menor a mayor \n"; /*Ordenar*/ if(num1>num2) if (num1 > num3) { if (num3 > num2 ) { orden = num1; num1 = num2; num2 = num3; num3 = orden; } else {

con If anidos
orden = num1; num1= num3; num3= orden; } } else { orden = num2; num2 = num1; num1 = orden; } else if (num2 > num3) if (num1 > num3) { orden = num2; num2 = num1; num1 = num3; num3 = orden; } else { orden = num3; num3 = num2; num2 = orden; }

cout<<"Orden \n"<<num1<<","<<num2<<","<<num3<<endl; cout<<"Presiones una tecla para finalizar"; getch(); return 1; }

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

1.- Clculo del valor absoluto de un nmero: INICIO LEER nmero SI nmero < 0 ENTONCES absoluto - nmero EN OTRO CASO absoluto nmero FINSI ESCRIBIR absoluto FIN

2. Realizar Un Programa que determine cul de los 2 nmeros enteros introducidos por teclado es el mayor (los 2 nmeros inducidos siempre son diferentes) 3. Realizar un programa que determine si un nmero indroducido por teclado es mayor, igual o menor que cero 4. Realizar un programa que determine si un numero es par o impar, en caso sea sero dira Cero no es par ni impar 5. Realizar un programa que determine si un numero es mltiplo de 2 y/o 3

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

alternativa compuesta En muchas ocasiones se requieren condiciones que poseen ms de una alternativa. En ese caso existe una instruccin evala una expresin y segn los diferentes valores que tome se ejecutan unas u otras instrucciones. Ejemplo: segn_sea expresin hacer valor1: instrucciones del valor1 valor2: instrucciones del valor2 ... si-no instrucciones del si_no fin_segn

Casi todos los lenguajes de programacin poseen esta instruccin que suele ser un case (aunque C, C++, Java y C# usan switch). Se evala la expresin y si es igual que uno de los valores interiores se ejecutan las instrucciones de ese valor. Si no cumple ningn valor se ejecutan las instrucciones del si_no. Ejemplo:
programa pruebaSelMultiple var x: entero inicio escribe(Escribe un nmero del 1 al 4 y te dir si es par o impar) lee(x) segn_sea x hacer 1: escribe(impar) 2: escribe(par) 3: escribe(impar) 4: escribe(par) si_no escribe(error eso no es un nmero de 1 a 4) fin_segn fin

El segn sea se puede escribir tambin: segn_sea x hacer 1,3: escribe(impar) 2,4: escribe(par) si_no escribe(error eso no es un nmero de 1 a 4) fin_segn

Curso : Algoritmos I
FACULTAD DE INGENIERA INDUSTRIAL Y DE SISTEMAS Carrera Profesional de Ingeniera de Sistemas

Profesor: Ing. Erick Nuez

Anda mungkin juga menyukai