Ciclo While Switch Do While
Ciclo While Switch Do While
Ciclo While Switch Do While
Su formato general es :
while(condición)
};
Un error muy comun con el while, es poner un punto y coma(;) despues de la (condición)
ejemplo while(condicion); ←-esto es y causa un error.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int num=1,cont=0;
float sum=0;
while (num!=0)
{
printf("Introduzca número:");
scanf("%d",&num);
sum=sum+num;
if (num!=0)
{
cont=cont+1;
}
system("PAUSE");
return 0;
}
Prog.cpp
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main()
clrscr();
// declaracion variables
int x=1;
// instruccion while
while(x<=10)
getchar();
SENTENCIA DO – WHILE
El estatuto do-while se utiliza para especificar un ciclo condicional que se ejecuta al menos
una vez. • Este ciclo se
Sintaxis
do
Estatuto;
While (condición );
do
{
Bloque de estatutos;
}
•Se realizan los estatutos 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
el (los) estatuto(s) se realizan al menos una vez a diferencia del while
EJEMPLO
Codigo prog.cpp
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
clrscr();
// declaracion variables
int x;
// instruccion for
for(x=1;x<=10;x=x+1)
getchar();
}
EJERCICIOS
int main ()
{
int n, serie=2, suma=0;
printf ("Inserte cantidad de terminos a generar: "); scanf ("%d",&n);
for (int i=1;i<=n;i++)
{
printf ("%d! + ",serie);
suma=suma+(facto(serie));
serie=serie+2;
}
printf (" = %d",suma);
getch();
}
EJEMPLO 1:
Programa que imprime el valor actual de una variable en cada ciclo.
//Con la sentencia FOR:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int i;
for(i=0; i<=20; i++)
printf(“Soy la variable i, mi valor en esta iteracion es: %d\n”,i);
system(“pause”);
}
——————————
//Con la sentencia WHILE:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int i=0;
while(i<=20)
{
printf(“Soy la variable i, mi valor en esta iteracion es: %d\n”,i);
i++;
}
system(“pause”);
}
——————————
//Con la sentencia DO-WHILE:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int i=0;
do
{
printf(“Soy la variable i, mi valor en esta iteracion es: %d\n”,i);
i++;
}
while(i<=20);
system(“pause”);
}
EJEMPLO 2:
Programa que suma los 10 primeros número enteros.
//Con la sentencia FOR:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int num;
int suma=0;
for(num=0; num<=10; num++)
{
suma = suma + num;
}
printf(“Suma = %d\n”,suma);
system(“pause”);
}
——————————
//Con la sentencia WHILE:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int num=0;
int suma=0;
while(num<=10)
{
suma = suma + num;
num++;
}
printf(“Suma = %d\n”,suma);
system(“pause”);
}
——————————
//Con la sentencia DO-WHILE:
void main()
{
int num=0;
int suma=0;
do
{
suma = suma + num;
num++;
} while(num<=10);
printf(“Suma = %d\n”,suma);
system(“pause”);
}
EJEMPLO 3:
Programa que muestra de forma descendente los números del 0 al 10.
//Con la sentencia FOR:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int numero;
for(numero=10; numero >= 0; numero–)
printf(“%d\n”,numero);
system(“pause”);
}
——————————
//Con la sentencia WHILE:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int numero=10;
while(numero >= 0)
{
printf(“%d\n”,numero);
numero–;
}
system(“pause”);
}
———————————
//Con la sentencia DO-WHILE:
#include<stdio.h>
#include<stdlib.h>
void main()
{
int numero=10;
do
{
printf(“%d\n”,numero);
numero–;
}
while(numero >= 0);
system(“pause”);
}
Programa que lea un número entero por teclado y que calcule su factorial
#include <stdio.h>
int main(){
int x;
double fact=1;
while(x>1) fact*=x--;
printf("Factorial =%lf",fact);
}
Crear un programa que lea un número entero y a partir de él cree un cuadrado de asteriscos con
ese tamaño. Los asteriscos sólo se verán en el borde del cuadrado, no en el interior-
#include <stdio.h>
int main(){
int n,fila,col;
/*Primera fila*/
for(col=1;col<=n;col++){
printf("*");
}
printf("\n");
/*Filas interiores*/
for(fila=2;fila<n;fila++){
printf("*");
for(col=2;col<n;col++){
printf(" ");
}
printf("*");
printf("\n");
/* Última fila*/
for(col=1;col<=n;col++){
printf("*");
}
*
***
*****
*******
*********
***********
#include <stdio.h>
int main(){
int n,fila,col;
printf("tamaño de la piramide: ");
scanf("%d",&n);
for(fila=1;fila<=n;fila++){
/* Espacios en blanco*/
for(col=1;col<=n-fila;col++){
printf(" ");
}
for(col=1;col<=2*fila-1;col++){
printf("*");
printf("\n");
}
Crear un programa que lea un número e indique su valor en la sucesión de Fibonacci
(llamarle Fibonacci).
Esta sucesión calcula su valor de la siguiente manera. Sólo es válido para números
positivos, si el número es un uno, la sucesión vale 1 si es dos, la sucesión vale 2. Para el
resto la sucesión es la suma de la sucesión de los dos números anteriores.
Es decir, para 7 el valor sería lo que valga la sucesión de 6 más la sucesión de cinco.
#include <stdio.h>
int main(){
int n,cont;
double res=1; /* Resultado final */
do{
}while(n<=0);
for(cont=3;cont<=n;cont++){
res=f1+f2;
f1=f2;
f2=res;
printf("Resultado: %.0f",res);
Que haga un menú del tipo “desea salir (S/N)” y el programa no termine hasta que el
usuario teclee “S”.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char c;
system("PAUSE");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
while (num2!=1){
num2=num2-1;
num=num*num2;
}
system("PAUSE");
return 0;
}
INSTRUCCION SWITCH C++
break;
break;
break; ………………
default: instrucción(es);
};
Switch
#include <stdio.h>
#include <conio.h>
int main ()
{
int a,b,menu,resultado;
printf("Ingrese dos n\xa3meros: \n");
scanf("%i",&a);
scanf("%i",&b);
printf("\n*******Calculadora 1.0*******\n");
printf("1-Suma\n");
printf("2-Resta\n");
printf("3-Divisi\xa2n\n");
printf("4-Multiplicaci\xa2n\n");
printf("*************Operaci\xa2n*****...
scanf("%i",&menu);
switch(menu)
{
case 1: resultado=a+b; break;
case 2: resultado=a-b; break;
case 3: resultado=a/b; break;
case 4: resultado=a*b; break;
}
printf("\nOperaci\xa2n: \n>%i",resultado);
getch();
return 0;
}
randomico
#include <iostream>
int main ()
int cantidad;
cout << (1 + rand() % 10); //mostramos por pantalla los numeros generados del 1 al 20
return 0 ;
} //fin de main.
Potencia
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main()
int c, auxc,pot;
system("cls");
printf("Ingrese un número:");
scanf("%d",&c);
scanf("%d",&pot);
auxc=pow(c,pot);
getch();
return 0;
Goto
#include <stdio.h>
#include<stdlib.h>
#include<windows.h>
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
int main()
system("cls");
gotoxy(20,10);
system("PAUSE");
return 0;
Que imprima la suma de todos los números impares que van del 1 al 100 y diga cuántos
hay.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int x,sum,cont;
sum=0;
cont=0;
for (x=1;x<=100;x++)
{
if (x%2!=0)
{
sum=sum+x;
cont=cont+1;
}
}
printf("Hay %d números\n",cont);
printf("La suma es: %d\n",sum);
system("PAUSE");
return 0;
}
Que pida dos números y muestre todos los números que van desde el primero al segundo.
Se debe controlar que los valores son correctos.
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int num1, num2,x;
if (num1>num2)
{
printf("Los valores introducidos no son correctos \n");
}
else
{
for (x=num1;x<=num2;x++)
{
printf("%d\n",x);
}
}
system("PAUSE");
return 0;
}
Crear el programa asteriscos4 en el que se introduce un número entero y se crea una pirámide de
asteriscos. Por ejemplo si se introduce el 6, el resultado sería:
#include <stdio.h>
int main(){
int n,fila,col;
scanf("%d",&n);
for(fila=1;fila<=n;fila++){
/* Espacios en blanco*/
for(col=1;col<=n-fila;col++){
printf(" ");
for(col=1;col<=2*fila-1;col++){
printf("*");
printf("\n");
}
}