Elemento2
-
Upload
rikrdo-jara -
Category
Education
-
view
548 -
download
2
description
Transcript of Elemento2
![Page 1: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/1.jpg)
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE CIENCIAS HUMAS Y DE LA
EDUCACIÓN
DOCENCIA EN INFORMÁTICA
SEGUNDO SEMESTRE “A”
PROGRAMACIÓN I
ING WILMA GAVILANEZ
ELEMENTO 2
PROGRAMAS RESUELTOS
RICARDO JARA
SEPTIEMBRE 2013 – FEBRERO 2014
![Page 2: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/2.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 1
Enunciado:
Diseñe un programa que me permita ingresar 3 números enteros desde teclado que
corresponden a 3 notas las mismas que deben estar entre 1 y 10, obtenga el promedio
correspondiente y determine su equivalencia.
Si el promedio es mayor o igual a 7, está aprobado.
Si el promedio es mayor o igual a 5 y
Menor que 7 esta suspenso
Si el promedio es menor que 5 esta reprobado
Análisis:
Para realizar las condiciones se utiliza la sentencia if y else de esta manera podremos saber
si la persona está aprobada, suspensa, o reprobada.
Documentación:
#include<stdio.h> #include<conio.h> void main() { float a,b,c,d,p; clrscr(); gotoxy(8,5);printf("Introduzca la primera calificacion:"); calificación scanf("%f",&a); if((a>0)&&(a<11)) { gotoxy(8,8); printf("Introduzca la segunda calificacion:"); scanf("%f",&b); }
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
La primera condición
Ingresa la calificación
![Page 3: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/3.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
if((b>0)&&(b<11)) { gotoxy(8,11); printf("Introduzca la tercera calificacion:"); scanf("%f",&c); } if((c>0)&&(c<11)) { p=(a+b+c)/3; } if(p>6) { gotoxy(8,14); printf("Ha aprobado, el promedio es:%f",p); } if((p>4)&&(p<7)) { gotoxy(8,14); printf("Esta suspenso, el promedio es:%f",p); } if(p<5) { gotoxy(8,14); printf("Ha reprobado, el promedio es:%f",p); } getch(); }
Fin del programa
La segunda condición
La tercera condición
La cuarta condición
La quinta condición
La sexta condición
![Page 4: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/4.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
Programa 2
Enunciado:
Diseñe un programa que me permita ingresar un número entero desde teclado entre 1 y 7,
que me permita visualizar el nombre del día de la semana que le corresponde.
Análisis:
En este programa utilizamos varias sentencias if y else para poder saber a qué día pertenece
el número ingresado.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
Int n;
clrscr();
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
![Page 5: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/5.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy (10,5);printf("DIAS DE LA SEMANA SEGUN EL NUEMERO");
gotoxy(5,8);printf("Ingrese el numero:");scanf("%d",&n);
if((n<8)&&(n>0))
{
if(n==1)
{
gotoxy(10,10);printf("Es Lunes");
}
if(n==2)
{
gotoxy(10,10);printf("Es Martes");
}
if(n==3)
{
gotoxy(10,10);printf("Es Miercoles");
}
if(n==3)
{
gotoxy(10,10);printf("Es Jueves");
}
if(n==3)
{
gotoxy(10,10);printf("Es Viernes");
}
if(n==3)
{
gotoxy(10,10);printf("Es Sábado");
}
if(n==3)
{
gotoxy(10,10);printf("Es Domingo");
}
getch();
}
La primera condición para ingresar un número q no sea mayor a 7
Fin del programa
Condiciones para saber el día que le pertenece al número ingresado
Se ingresa el día
![Page 6: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/6.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
![Page 7: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/7.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 3
Enunciado:
Diseñe un programa en C++ que me permita obtener las comisiones de ventas de la
empresa xyz bajo los siguientes condicionamientos:
Si el valor de la venta es ≥ 3000 y ≤ 5000 el valor de porcentaje es de 5%
Si el valor de la venta es > 5000 y ≤ 8500 el valor de porcentaje es de 7%
Si el valor de la venta es > 8500 y ≤ 10000 el valor de porcentaje es de 8%
Si el valor de la venta es > 10000 el valor de porcentaje es de 10%
Visualice el valor total de ventas ingresadas y el total de comisiones ingresadas; el proceso
se repite n veces.
Análisis:
Se ingresa la venta, se aplican las condiciones especificadas, se obtiene el resultado y según
su resultado se le acredita un porcentaje a la venta, si desea repetir el proceso ingresa el 1 si
desea salir se elige el 0
Documentación:
#include<stdio.h>
#include<conio.h>
main()
{
int z=1,y=0,con;
float a,b,c,d,e,f,g,h,i;
do
{
clrscr();
z=1;
y=0;
gotoxy(32,4);printf("VENTAS EFECTUADAS");
gotoxy(5,7);printf("Ingresar el valor de la venta efectuada:");
scanf("%f",&a);
if((a>2999)&&(a<5001))
{
b=(a*5)/100;
c=a+b;
gotoxy(8,10);printf("Total de ventas : %f",c);
gotoxy(8,13);printf("Su utilidad es : %f",b);
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Ingresa venta
Comienzo del do
Comienzo del if
Imprime la venta y porcentaje ganado
![Page 8: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/8.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
if((a>5000)&&(a<8499))
{
d=(a*7)/100;
e=d+a;
gotoxy(8,10);printf("Total de ventas : %f",e);
gotoxy(8,13);printf("Su utilidad es : %f",d);
}
if((a>8500)&&(a<10001))
{
h=(a*8)/100;
i=h+a;
gotoxy(8,10);printf("Total de ventas : %f",i);
gotoxy(8,13);printf("Su utilidad es : %f",h);
}
if(a>10000)
{
f=(a*10)/100;
g=f+a;
gotoxy(8,10);printf("Total de ventas : %f",g);
gotoxy(8,13);printf("Su utilidad es : %f",f);
}
gotoxy(30,20);printf("Pulsa 1 para continuar o 2 salir del programa");
scanf("%d",&con);
}
while(con==1);
getch();
}
Corrido del programa:
Fin del do
Caso contrario
Comienzo del if
Imprime la venta y porcentaje ganado
Caso contrario
Imprime la venta y porcentaje ganado
Ingresar opción
Imprime la venta y porcentaje ganado
![Page 9: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/9.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 4
Enunciado:
Diseñe un programa que me permita ingresar 2 números por teclado y realizar la suma de
los mismos.
Análisis:
Utilizamos un if para que me valide los datos ingresados para que el primer número
ingresado sea mayor que el segundo número caso contrario me imprima un mensaje y me
pida nuevamente.
Documentación:
#include <stdio.h>
#include <conio.h>
int a,b,r;
void main ()
{
clrscr();
gotoxy(15,8); printf("ingrese 1er valor: "); scanf("%d",&a);
gotoxy(15,12); printf("ingrese 2do valor: ");
scanf("%d",&b);
if(a>b)
{
r=a+b;
}
Else
{
gotoxy(5,22); printf("ingrese un número mayor");
}
gotoxy(15,15); printf("el resultado es: %d",r);
getch();
}
Librerías
Ingreso y escaneo de datos
Librerías
Declaración de variables tipo enteras
Inicio del programa
Blanqueo de pantalla
Condicion para validar los datos
Imprime resultados
Fin del programa
Pausar pantalla
operacion
![Page 10: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/10.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
Programa 5
Enunciado:
Diseñe un programa que realice la suma de dos números, siempre que el primer valor este
entre 3 y 23 y el segundo valor este entre 5 y 17.
Análisis:
Utilizamos un DO WHILE para que el proceso se repita cuantas veces quiera el usuario y
también dos más para que me valide los datos ingresados entre los rango de 3 y 23 y el otro
de 5 y 17 caso contrario me pida nuevamente.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int a,b,suma,op;
{
clrscr();
do
{
gotoxy(36,4); printf(" ");
gotoxy(10,4); printf("Ingrese el primer número: ");
scanf("%d",&a);
}
Librerías
Librerías
Inicio del programa
Declaración de variables tipo enteras
Segundo DO para validar los datos
Ingreso y escaneo de datos
![Page 11: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/11.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
while (a<3||a>23);
do
{
gotoxy(36,6); printf(" ");
gotoxy(10,6); printf("Ingrese el segundo numero: ");
scanf("%d",&b);
}
while ((b>4)&&(b<18));
suma= a+b;
gotoxy(10,8); printf("La suma es: %d",suma);
gotoxy(10,10); printf("Presione 1 para continuar o 0 para salir");
scanf("%d",&op);
}
while (op==1);
getch();
}
Corrido del programa:
Programa 7
Enunciado:
Diseñe un programa que me permita ingresar el nombre de una persona y la edad de la
misma que debe estar entre 3 y 85, para obtener las siguientes equivalencias:
Si la edad está entre 3 y 5 debe visualizarse: nombre, “es un bebé”
Si la edad es > 5 y <13 debe visualizarse: nombre, “es un niño”
Si la edad es > 13 y ≤ 21 debe visualizarse: nombre, “es un adolescente”
Ingreso y escaneo de datos
Tercer DO para validar los datos
Primer DO para que se
repita n veces
Pausar pantalla
Fin del programa
![Page 12: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/12.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Si la edad es > 21 y ≤ 60 debe visualizarse: nombre, “es un adulto”
Si la edad es > 60 debe visualizarse: nombre, “es un adulto mayor”
El programa se repite tantas veces como el usuario lo desee.
Análisis:
Se ingresa el nombre de la persona y su edad, se aplican las condiciones especificadas, se
obtiene el resultado; si la persona es bebe, niño, adolescente, adulto o adulto mayor, si
desea repetir el proceso ingresa el 1 si desea salir se elige el 0.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int e;
char nombre[15];
clrscr();
gotoxy(15,2); printf("EQUIVALENCIAS DE EDAD");
flushall();
gotoxy(10,4); printf("Ingrese el nombre: "); gets(nombre);
do
{
gotoxy(18,6); printf(" ");
gotoxy(10,6); printf("Ingrese la edad: ");scanf("%d",&e);
}
while (e<3||e>85);
if((e>2)&&(e<6))
{
gotoxy(10,10); puts(nombre);
gotoxy(20,10); printf("Es un bebe");
}
if ((e>5)&&(e<14))
{
gotoxy(10,10); puts(nombre);
gotoxy(20,10); printf("Es un niño");
}
if ((e>12)&&(e<22))
{
gotoxy(10,10); puts(nombre);
gotoxy(20,10); printf("Es un adolescente");
}
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Ingresar la edad
Ingresa nombre
Comienzo del do
Fin del do
Imprime es un bebe
Caso contrario si la edad es menor que 5 y mayor que 14
Imprime es un niño
Caso contrario si la edad es menor que 12 y mayor que 22
Imprime es un adolescente
![Page 13: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/13.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
getch();
}
Corrido del programa:
Programa 8
Enunciado:
Diseñe un programa que me permita simular la venta de productos en una factura, de la
cual necesitamos ingresar el nombre del producto, la cantidad, precio unitario y calcular el
precio total. El programa se repite n veces según los productos que el usuario desee
ingresar.
Análisis:
Necesitas una variable tipo carácter para ingresar el nombre otra tipo entero para ingresar la
cantidad otra tipo flotante para ingresar el valor de cada uno y después utilizar variables
enceradas para almacenar el valor final de la factura y repetirlo n veces.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<string.h>
Bibliotecas
Fin del programa
![Page 14: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/14.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
void main()
{
int can,op;
float pre,sub=0,iv,to;
char pro[15];
do
{
clrscr();
gotoxy(31,1);printf("Factura de n Productos");
flushall();
gotoxy(10,2);printf("Producto");
gotoxy(26,2);printf("Cantidad");
gotoxy(36,2);printf("Precio");
gotoxy(43,2);printf("Valor total");
gotoxy(10,3);gets(pro);
gotoxy(26,3);scanf("%d",&can);
gotoxy(36,3);scanf("%f",&pre);
vt=can*pre;
gotoxy(43,3);printf("%2.2f",vt);
sub=sub+vt;
iv=(sub*12)/100;
to=sub+iv;
gotoxy(10,20);printf("Presione 1 para continuar o 0 para salir: ");scanf("%d",&op);
}while(op==1);
gotoxy(10,11);printf("Sub total %2.2f",sub);
gotoxy(10,12);printf("Iva %2.2f",iv);
gotoxy(10,13);printf("Total %2.2f",to);
getch();
}
Inicio del programa
Bibliotecas
Inicio del do
Borrado de pantalla
Impresión de títulos
Ingreso de la cantidad y precio
Operaciones
Fin del
do
Impresión de respuestas
![Page 15: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/15.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
Programa 9
Enunciado:
Diseñe un programa que me permita calcular el promedio general de las notas de distintas
materias correspondientes al 2º Semestre de Docencia en Informática, en donde cada una de
las notas ingresadas debe estar entre 1 y 10.
![Page 16: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/16.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Análisis:
Se ingresa el nombre del módulo, se ingresan las tres notas para luego obtener el promedio
de dicho modulo las notas deben ser menores o iguales a 10 y mayores o iguales a 1, se
desea seguir ingresando los diferentes modulos selecciona el numero 1 despues de obtener
el primer promedio para que siga ingresando mas modulos, si ya no desesa ingresar ningún
otro modulo selecciona el 0 para proceder a calcular el promedio general el cual se obtiene
sumando los promedios de cada modulo y dividiendo para la cantidad de modulos
ingrsados, si desea salir elige el cero.
Documentación:
#include<conio.h>
#include<stdio.h>
void main()
{
char no[15];
int op,c=0;
float n1,n2,d,n3,fla=8,pg=0,p;
clrscr();
gotoxy(25,2);printf("UNIVERSIDAD TECNICA DE AMBATO");
gotoxy(20,4);printf("FACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACION");
gotoxy(29,5);printf("Segundo Informatica");
gotoxy(10,7);printf("MODULO NOTA1 NOTA2 NOTA3 PROMEDIO");
do
{
c=c+1;
gotoxy(10,fla);gets(no);
do
{
gotoxy(27,fla);printf(" ");
gotoxy(27,fla);scanf("%f",&n1);
}while(n1>10 || n1<1);
do
{
gotoxy(36,fla);printf(" ");
gotoxy(36,fla);scanf("%f",&n2);
}while(n2>10 || n2<1);
do
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Comienzo del do
Ingresa modulo y nota
![Page 17: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/17.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
{
gotoxy(45,fla);printf(" ");
gotoxy(45,fla);scanf("%f",&n3);
}while(n3>10 || n3<1);
p=(n1+n2+n3)/3;
pg=pg+p;
gotoxy(54,fla);printf("%2.2f",p);
gotoxy(10,15);printf("%2.2f",pg);
fla=fla+1;
gotoxy(4,24);printf("Presione 1 para continuar o 0 para salir: ");scanf("%d",&op);
}while(op==1);
d=pg/c;
gotoxy(10,fla+6);printf("%d",d);
getch();
}
CORRIDO
Sacamos el promedio de cada módulo conjuntamente con el promedio general.
Sacaneamos el promedio de cada módulo junto con el promedio
general
Fin de programa
![Page 18: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/18.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 10
Enunciado:
Realice un programa en C++ que me permita obtener el liquido a recibir de un empleado
bajo los siguientes parámetros:
El empleado percibe un salario minimo vital el mismo que depende de su categoría, existen
3 posibles alterantivas, este datos deberá ser ingresada al inicio del programa
conjuntamente con el nombre del empleado:
Categoria 1 180,00
Categoría 2 250,00
Categoría 3 380,00
A este salario minimo vital se le incluye algunos rubros que son:
1. Horas extras, las mimas que no pueden exceder 8, cada hora extra cuesta Usd. 1,80.
2. Bono familiar la misma que esta condicionada. Si el empleado tiene mas de dos
hujos se le paga Usd. 4,50 por cada hijo caso contrario se le reconoce Usd. 6,20 por
cada hijo.
3. Obtenga el valor del IESS que es el 11,5 % del nominal
4. Se le descuenta el 2% del nominal como aporte a la asociación
5. Obtenga los valores correspondientres de ingresos, egresos y total a recibir.
El programa se genera n veces.
Análisis:
Se ingresa la categoría que desea calcular, se ingresa numero de hijos y numero de horas
extras, se aplican las operaciones necesarias para los resultados deseados, se obtiene el
resultado en donde se imprime, salario mas horas extras, bono familiar, descuento del iees,
descuentos de la asociación, egresos, ingresos, total recibido, si desea repetir el proceso
ingresa el 1 si desea salir se elige el 0.
Documentación:
#include<conio.h>
#include<stdio.h>
void main ()
{
int vol;
do
{
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Comienzo del do
![Page 19: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/19.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
clrscr();
int op,ex,hi,reg;
float ext,c1=180,c2=250,c3=380,iees,hij,nomi,descu,egre,total;
gotoxy(10,1);printf("Salario Liquido Recibido Por Un Empleado");
gotoxy(12,2);printf("Escoja su Categoria Segun Su Salario");
gotoxy(15,4);printf("1.- Categoria 180 ");
gotoxy(15,6);printf("2.- Categoria 250 ");
gotoxy(15,8);printf("3.- Categoria 380 ");
gotoxy(15,12);printf("Ingrese La Categoria :");scanf("%d",&op);
if (op==1)
{
do
{
clrscr();
gotoxy(20,1);printf("CATEGORIA 1");
gotoxy(10,5);printf("NUMERO DE HORAS EXTRAS..: ");scanf("%d",&ex);
if ((ex>=0)&&(ex<=8))
{
gotoxy(10,14);ext=(ex*1.80)+c1;
gotoxy(10,9);printf("SALARIO MAS HORAS EXTRAS...: %2.2f ",ext);
}
else
{
do
{
gotoxy(40,5);printf(" ");
gotoxy(10,12);printf("SOLO PUEDE TENER HASTA 8 HORAS EXTRAS");
gotoxy(10,5);printf("NUMERO DE HORAS EXTRAS..: ");scanf("%d",&ex);
}
while ((ex<=0)&&(ex>=8));
gotoxy(10,14);ext=(ex*1.80)+c1;
gotoxy(10,9);printf("SALARIO MAS HORAS EXTRAS...: %2.2f ",ext);
}
gotoxy(10,6);printf("NUMERO DE HIJOS.........: ");scanf("%d",&hi);
if(hi>2)
{
hij=hi*4.5;
}
else
hij=hi*6.2;
gotoxy(10,10);printf("BONO FAMILIAR..............: %2.2f",hij);
nomi=ext+hij;
iees=(nomi*115)/1000;
gotoxy(10,11);printf("DESCUENTO DEL IEES.........: %2.2f",iees);
descu=(nomi*2)/100;
gotoxy(10,12);printf("DESCUENTO DE LA ASOCIACION.: %2.2f",descu);
gotoxy(10,14);printf("INGRESOS...................: %2.2f",nomi);
Declaración
de variables
Comienzo del if
Impresión de menu
Lectura de horas extras
Inicio del if
Impresion
Caso contrario
Lectura de horas extras Fin del do
Impresion
Inicio del if
Impresión de resultados
![Page 20: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/20.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
egre=iees+descu;
total=nomi-egre;
gotoxy(10,13);printf("EGRESOS....................: %2.2f",egre);
gotoxy(10,15);printf("TOTAL RECIBIDO.............: %2.2f",total);
gotoxy(2,23);printf("SI DESEA HACER OTRO ROL DE PRESIONE 1 CASO
CONTRARIO 0...................: ");
scanf("%d",®);
}
while(reg==1);
}
if(op==2)
{
do
{
clrscr();
gotoxy(20,1);printf("CATEGORIA 2");
gotoxy(20,5);printf("NUMERO DE HORAS EXTRAS....: ");scanf("%d",&ex);
if ((ex>=0)&&(ex<=8))
{
gotoxy(10,14);ext=(ex*1.80)+c2;
gotoxy(10,9);printf("SALARIO MAS HORAS EXTRAS
....: %2.2f ",ext);
}
else
{
do
{
gotoxy(40,5);printf(" ");
gotoxy(10,12);printf("SOLO PUEDE TENER HASTA 8 HORAS");
gotoxy(20,5);printf("NUMERO DE HORAS EXTRAS....: ");
scanf("%d",&ex);
}
while ((ex<=0)&&(ex>=8));
gotoxy(10,14);ext=(ex*1.80)+c2;
gotoxy(10,9);printf("SALARIO CON HORAS EXTRAS
....: %2.2f ",ext);
}
gotoxy(20,6);printf("NUMERO DE HIJOS...........: ");scanf("%d",&hi);
if(hi>2)
{
hij=hi*4.5;
}
else
hij=hi*6.2;
Fin del do
Comienzo del if
Lectura de horas extras
Inicio del if
Caso contrario
Lectura de horas extras
Fin del do
Impresion
Inicio del if
Calculo
![Page 21: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/21.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(10,10);printf("BONO FAMILIAR...............: %2.2f",hij);
nomi=ext+hij;
iees=(nomi*115)/1000;
gotoxy(10,11);printf("DESCUENTO DEL IEES..........: %2.2f",iees);
descu=(nomi*2)/100;
gotoxy(10,12);printf("DESCUENTO ASOCIACION........: %2.2f",descu);
gotoxy(10,14);printf("INGRESOS....................: %2.2f",nomi);
egre=iees+descu;
total=nomi-egre;
gotoxy(10,13);printf("EGRESOS.....................: %2.2f",egre);
gotoxy(10,15);printf("TOTAL RECIBIDO..............: %2.2f",total);
gotoxy(2,23);printf("SI DESEA HACER OTRO ROL DE PRESIONE 1 CASO
CONTRARIO 0...................: ");
scanf("%d",®);
}
while(reg==1);
}
if(op==3)
{
do
{
clrscr();
gotoxy(20,1);printf("CATEGORIA 3");
gotoxy(20,5);printf("NUMERO DE HORAS EXTRAS....: ");
scanf("%d",&ex);
if ((ex>=0)&&(ex<=8))
{
gotoxy(10,14);ext=(ex*1.80)+c3;
gotoxy(5,9);printf("SALARIO MAS HORAS EXTRAS
....: %2.2f ",ext);
}
else
{
do
{
gotoxy(40,5);printf(" ");
gotoxy(10,12);printf("SOLO PUEDE TENER HASTA 8 HORAS");
gotoxy(20,5);printf("NUMERO DE HORAS EXTRAS....: ");
scanf("%d",&ex);
}
while ((ex<=0)&&(ex>=8));
gotoxy(10,14);ext=(ex*1.80)+c3;
gotoxy(5,9);printf("SALARIO MAS HORAS EXTRAS
....: %2.2f ",ext);
Impresión de resultados
Fin del do
Comienzo del if
Lectura de horas extras
Inicio del if
Impresion
Caso contrario
Lectura de horas extras
Fin del do
Impresion
![Page 22: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/22.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
gotoxy(20,6);printf("NUMERO DE HIJOS...........: ");scanf("%d",&hi); if(hi>2)
{
hij=hi*4.5;
}
else
hij=hi*6.2;
gotoxy(5,10);printf("BONO FAMILIAR...............: %2.2f",hij);
nomi=ext+hij;
iees=(nomi*115)/1000;
gotoxy(5,11);printf("DESCUENTO DEL IEES..........: %2.2f",iees);
descu=(nomi*2)/100;
gotoxy(5,12);printf("DESCUENTO ASOCIACION........: %2.2f",descu);
gotoxy(5,14);printf("INGRESOS....................: %2.2f",nomi);
egre=iees+descu;
total=nomi-egre;
gotoxy(5,13);printf("EGRESOS.....................: %2.2f",egre);
gotoxy(5,15);printf("TOTAL RECIBIDO..............: %2.2f",total);
gotoxy(2,23);printf("SI DESEA HACER OTRO ROL DE PRESIONE 1 CASO
CONTRARIO 0...................: ");
scanf("%d",®);
}
while(reg==1);
getch();
}
gotoxy(2,24);printf("SI DESEA HACER SU CALCULO CON OTRA
CATEGORIA PULSE 1 CASO CONTRARIO 0....: ");
scanf("%d",&vol);
}
while (vol==1);
}
Corrido del programa:
Impresión de resultados
Fin del do
Fin del do
Inicio del if
![Page 23: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/23.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 24: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/24.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 11
Enunciado:
Diseñe un programa que me permita imprimir un borde de pantalla
Análisis:
Utilizamos un ciclo FOR para que tenga un inicio y un fin tal símbolo utilizado para que
nos de la imagen de un borde.
Documentación:
#include<conio.h>
#include<stdio.h>
main ()
{
int i;
clrscr();
for(i=2;i<=78;i++)
{
gotoxy(i,1);printf("-");
gotoxy(i,24); printf("-");
}
Librerías
Librerías
Inicio del programa
Declaración de variable tipo entera
Blanqueo de pantalla
Inicio del ciclo repetitivo
para genera el margen
![Page 25: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/25.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
for(i=2;i<=24;i++)
{
gotoxy(2,i);printf("-");
gotoxy(78,i);printf("-");
}
gotoxy(25,5);printf("BORDE EN PANTALLA");
getch();
}
Corrido del programa:
Programa 12
Enunciado:
Diseñe un programa que me permita visualizar la serie de los números pares ingresando un
límite desde teclado.
Análisis:
Impresión de un mensaje en
pantalla Pausar pantalla
Fin del programa
![Page 26: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/26.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Utilizamos un DO WHILE para que el proceso se genere n veces, dos ciclos FOR el
primero para el borde y el segundo para ingresar un límite para obtener los números pares.
Documentación:
#include<conio.h>
#include<stdio.h>
main ()
{
int i,limite,fila,op;
do
{
clrscr();
for(i=2;i<=75;i++)
{
gotoxy(i,1);printf("-");
gotoxy(i,24); printf("-");
}
for(i=1;i<=24;i++)
{
gotoxy(2,i);printf("-");
gotoxy(75,i);printf("-");
}
otoxy(25,5);printf("NUMEROS PARES");
gotoxy(6,8);printf("INGRESE EL LIMITE: "); scanf("%d",&limite);
fila=10;
for(i=2;i<=limite;i+=2)
{
gotoxy(10,fila); printf("%d",i);
fila=fila+1;
}
gotoxy(4,18); printf("INGRESAR UN NUEVO NUMERO 1 SALIR 0: ");
scanf("%d",&op);
}
while(op==1);
getch();
}
Corrido del programa:
Librerías
Librerías
Inicio del programa
Declaración de variable tipo entera
DO para que se repita n veces
Blanqueo de pantalla
Primer ciclo para generar
el borde
Primer ciclo para generar
el borde
Variable fila para que comience desde ahí
Segundo ciclo para obtener los
números pares
Pausar pantalla
Fin del programa
Ingreso y escaneo
de datos
![Page 27: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/27.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 13
Enunciado:
Diseñe un programa que me permita visualizar la serie de los números pares y los impares
que existen hasta el número límite ingresado desde teclado.
Análisis:
Se ingresa el límite de los números, gracias a las condiciones dadas se separan los pares de
los imperes y se colocan en la fila que les corresponde, si desea volver a repetir el proceso
deberá seleccionar el 1 caso contrario en 0, el do while nos ayuda a repetir o cancelar el
programa.
Documentación:
![Page 28: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/28.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
#include<conio.h>
#include<stdio.h>
void main()
{
int limite, fila=9, i, op=1;
do
{
clrscr();
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=23;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
gotoxy(25,3);printf("SERIE DE NUMEROS");
gotoxy(4,5);printf("ingrece el limite ");scanf("%d",&limite);
gotoxy(9,7);printf(" numeros pares numeros impares");
for(i=2;i<=limite;i+=2)
{
gotoxy(18,fila);printf("%d",i);
fila=fila+1;
}
fila=9;
for(i=1;i<=limite;i+=2)
{
gotoxy(40,fila);printf("%d",i);
fila=fila+1;
}
gotoxy(6,22);printf("continuar 1 cerrar 0 ====>");scanf("%d",&op);
}
while(op==1);
getch();
}
CORRIDO
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Se imprime el margen.
Comienzo del do
Se ingresa el límite. Se divide los pares y los impares
Se imprime los números correspondientes a los pares e impares
Fin de programa
![Page 29: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/29.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 14
Enunciado:
Diseñe un programa que me permita generar las tablas de multiplicar de cualquier factor
ingresado desde teclado y por cualquier limite ingresado desde teclado, el programa se
genera n veces, diseñe el borde en pantalla.
Análisis:
Necesitamos un lazo for dos variables tipo enteras una será el factor o número y la otra
será el límite y después un ciclo para repetirle n veces.
Documentación:
![Page 30: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/30.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
#include<conio.h>
#include<stdio.h>
void main()
{
int i,f,l,d,op;
do
{
clrscr();
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
gotoxy(15,2);printf("Tabla de multiplicar");
gotoxy(10,3);printf("Factor: ");scanf("%d",&f);
gotoxy(10,4);printf("Limite: ");scanf("%d",&l);
for(i=1;i<=l;i++)
{
d=f*i;
gotoxy(10,4+i);printf("%d",f);
gotoxy(18,4+i);printf("%d",d);
gotoxy(12,4+i);printf("*");
gotoxy(16,4+i);printf("=");
gotoxy(14,4+i);printf("%d",i);
Bibliotecas
Inicio del programa
Declaración de variable
Inicio del do
Borrar pantalla
Ciclo for para el borde
Impresión del borde
Ingreso del límite y factor
Ciclo for para la tabla
de multiplicar
Impresión de los
resultados
![Page 31: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/31.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
gotoxy(15,20);printf("Desea salir 1/0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Programa 15
Enunciado:
Diseñe un programa que me permita visualizar la factorial de un número ingresado desde
teclado.
Ingreso de la opción para
salir o regresar
![Page 32: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/32.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Análisis:
Necesitamos un lazo for para generar el factorial y una variable declara en 1 y multiplícale
por el contador y presentar el contador.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int i,n,f,op;
float fac;
fac=1;
do
{
fac=1;
clrscr();
for (i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
Inicio del programa
Inicio del programa
Declaración de variables
Inicio del do
Borrar la pantalla
Ciclo for para el borde
Impresión del borde
![Page 33: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/33.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(28,3);printf("FACTORIAL DE NUMEROS");
gotoxy(4,4);printf("Ingrese el limite: ");scanf("%d",&n);
for(i=1;i<=n;i++)
{
fac=fac*i;
gotoxy(35,6+i);printf("%6.0f",fac);
gotoxy(15,6+i);printf("Factodrial de: %d",i);
gotoxy(33,6+i);printf("=");
}
gotoxy(15,20);printf("Desea salir 1/0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Ciclo for el factorial
Impresión del factorial
Ingreso de opción para
salir o repetir
Fin del programa
While para la opción
![Page 34: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/34.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 16
Enunciado:
Diseñe un programa que me permita generar una serie de números, en donde el numerador
es cualquier factor ingresado desde teclado, y el numerador es la serie de los números
impares.
Análisis:
Este programa tubo cierto grado de dificultad en cuanto a la ubicación de los do while
utilizamos para sacar el numerador un ciclo for y multiplicamos y para el denominador
otro ciclo for para generar el límite de números que el usuario quiera según lo ingresado en
el programa y para sacar los números impares utilizamos un contador que comienza en 1 y
sumamos más dos también utilizamos un do while para poder realizar nuevamente el
programa cuantas veces lo requiera el usuario.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int i,f,r,d,op,factor,limite;
do
{
clrscr();
for(i=1;i<=80;i++)
{
gotoxy(i,24);printf("-");
gotoxy(i,1);printf("-");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("-");
gotoxy(80,i);printf("-");
}
gotoxy(35,2);printf("// SERIE DE NUMEROS \\");
gotoxy(15,9);printf("Ingrese el Limite: ");scanf("%d",&limite);
f=0;
d=0;
librerías
Inicio del programa
Declaración de variables
inicio de la sentencia
do(mientras)
estructura del ciclo for
Cuerpo del ciclo for
Cuerpo del ciclo for
Utilización del for para
realizar el margen
Impresión del título del
programa e ingreso de
límite
![Page 35: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/35.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
r=1;
for(i=1;i<=limite;i++)
{
d=d+4;
r=r+2;
factor=i*limite;
gotoxy(14+d,12);printf("%d",factor);
gotoxy(14+d,13);printf("-");
gotoxy(14+d,14);printf("%d",r);
}
gotoxy(3,23);printf("NUEVO PROCESO 1 SALIR 0: ");
scanf("%d",&op);
}
while(op==1);
getch();
}
Corrido del programa:
Estructura del ciclo for
Aquí el numerador es la serie
del número que ingresamos
ingresamos
Si el usuario digita 1 se repite el proceso para hacer
otra serie caso contrario termina el programa
Fin del programa
Fin del
do
Aquí el denominador so
los números impares
![Page 36: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/36.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 17
Enunciado:
Diseñe un programa en C++ que me permita generar n numeros primos, el proceso se repite
n veces y se visualiza el borde de pantalla.
Análisis:
Se ingresa el límite hasta donde desea que se visualicen los numeros primos, gracias a las
condiciones dadas se visiualizan solo los numeros primos que se encuentren en el limite
ingresado, si desea volver a repetir el proceso deberá seleccionar el 1 caso contrario en 0.
Documentación:
#include<conio.h>
#include<stdio.h>
main()
{
int i=0,j=0,lt,c,res=0,op=1,nc=0;
do
{
clrscr();
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(79,i);printf("*");
}
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
gotoxy(29,2);printf("NUMEROS PRIMOS");
gotoxy(6,4);printf("INGRESE EL LIMITE : ");scanf("%d",<);
gotoxy(6,6);printf("1");
c=2;
for(i=2;i<=lt;i++)
{
for(j=1;j<=c;j++)
{
if(i%j==0)
{
Librerías
Inicio del programa
Declaración de variables
Borrar pantalla
Se imprime el margen.
Comienzo del do
Se ingresa el límite.
![Page 37: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/37.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
nc=nc+1;
}
}
if(nc==2)
{
printf("%6d",i);
}
nc=0;
c=c+1;
}
gotoxy(2,23),printf("REPETIR 1 Y 0 PARA SALIR : ");scanf("%d",&op);
}
while(op==1);
getch();
}
Corrido del programa:
Se imprime los números primos correspondientes al rango
Fin de programa
![Page 38: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/38.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 18
Enunciado:
Realice un programa que me permita generar la siguiente serie de datos: como numerador
la serie de los impares y como denominador el factorial.
Análisis:
Este programa tubo cierto grado de dificultad en cuanto a la ubicación de los do while
utilizamos para sacar los números impares utilizamos un contador que comienza en 0 y
sumamos más dos y para el denominador utilizamos un contador y multiplicamos por la
variable del ciclo for también utilizamos un do while para poder realizar nuevamente el
programa cuantas veces lo requiera el usuario
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int j,b,d,c,op,limite,f,a;
do
{
clrscr();
for(j=1;j<=80;j++)´
{
gotoxy(j,24);printf("-");
gotoxy(j,1);printf("-");
}
for(j=1;j<=24;j++)
{
gotoxy(1,j);printf("-");
gotoxy(80,j);printf("-");
}
gotoxy(35,2);printf("SERIE DE NUMEROS");
gotoxy(15,5);printf("Ingrese el Limite: ");scanf("%d",&limite);
a=1;
librerías
Inicio del programa
Declaración de variables
inicio de la sentencia
do(mientras)
Estructura del ciclo for
Utilización del for para
realizar el margen
Impresión del título del
programa
![Page 39: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/39.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
b=1;
d=0;
f=0;
c=1;
for(j=1;j<=limite;j++)
{
f=f+5;
a=a*j;
gotoxy(15+f,9);printf("%d ",a);
gotoxy(15+f,8); printf("-");
gotoxy(15+f,7);printf("%d",c);
c=c+2;
}
gotoxy(3,22);printf("NUEVO PROCESO 1 SALIR 0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Fin del programa
Si el usuario digita 1 se repite el proceso para hacer
otra serie caso contrario termina el programa
Para el numerador utilizamos c=c+2 para
sacar el numero impar
Y para el denominador a=a*j es decir el
contador por la variable de for
![Page 40: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/40.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 19
Enunciado:
Genere n elementos de la siguiente serie: cualquier factor ingresado desde teclado como
numerador, el denominador numeros pares.
Análisis:
Este programa tubo cierto grado de dificultad en cuanto a la ubicación de los do while
utilizamos para sacar el numerador un ciclo for y multiplicamos y para el denominador
otro ciclo for para generar el límite de números que el usuario quiera según lo ingresado en
el programa y para sacar los números pares utilizamos un contador que comienza en 0 y
sumamos más dos también utilizamos un do while para poder realizar nuevamente el
programa cuantas veces lo requiera el usuario
Documentación:
#include<conio.h>
#include<stdio.h>
main ()
{
int i,n,m,p,j,l,d,opc;
do
{
clrscr();
for(i=2;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy (2,i); printf("*");
gotoxy(80, i); printf("*");
}
gotoxy(10,4);printf(" Programa que permite generar una serie de números");
librerías
Inicio del programa
Declaración de variables
inicio de la sentencia
do(mientras)
estructura del ciclo for
Cuerpo del ciclo for
Cuerpo del ciclo for
Utilización del for para
realizar el margen
Impresión del
título del
programa
![Page 41: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/41.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(4,9);printf("Ingrese el límite: ");
scanf("%d",&n);
l=6;
for(j=1;j<=n;j++)
{
P=j*n;
gotoxy(l,13); printf("%d",p);
gotoxy(l,14); printf("--");
l=l+3;
}
m=0;
l=6;
for(d=1;d<=n;d++)
{
m=m+2;
gotoxy(l,15); printf("%d",m);
l=l+3;
}
gotoxy(6,18);printf("Si desea realizar otra serie digite 1 o 0 para salir:
");scanf("%d",&opc);
}
while(opc==1);
getch();
}
Corrido del programa:
Estructura del ciclo for
Aquí el numerador es
la serie del número
que ingresamos
Estructura del ciclo for
Aquí imprime en el denominador
los números pares
Si el usuario digita 1 se repite el proceso para hacer
otra serie caso contrario termina el programa
Fin del programa
Fin del
do
![Page 42: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/42.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 20
Enunciado:
Genere una serie de datos que lleve por numerador el factorial y por denominador la serie
del fibonasi
Análisis:
Se ingresa el limite de la serie, se aplican los cálculos respectivos, se obtiene el resultado
que se imprime como numerador factores y denominador serie fibonaci, si desea repetir el
proceso ingresa el 1 si desea salir se elige el 0.
Documentación:
#include<conio.h>
#include<stdio.h>
void main()
{
int lt,j,op,i,a,co,b,c;
do
{
float fact=1;
clrscr();
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(79,i);printf("*");
}
for(i=1;i<=79;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,25);printf("*");
}
gotoxy(25,2);printf("TABLA DEL FACTORIAL Y FIBONACI ");
gotoxy(2,3);printf("INGRESE EL LIMITE : ");scanf("%d",<);
a=1;
b=0;
co=10;
for(j=1;j<=lt;j++)
{
fact=fact*j;
Librerías
Inicio del programa
Declaración de variables e
inicio del do
Borrar pantalla
Inicio del ciclo for
Margen
Inicio del ciclo for
Ingreso del limite
calculos
![Page 43: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/43.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
c=a+b;
a=b;
b=c;
gotoxy(co-3,6);printf("%4.0f",fact);
gotoxy(co-1,7);printf("---");
gotoxy(co,8);printf("%d",c);
co=co+7;
}
gotoxy(2,24);printf("1 continuar 0 salir");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Programa 21
Enunciado:
Genere la siguiente serie de datos: primos en el numerador e impares como denominador
Análisis:
Cálculos e impresión
Fin del do
![Page 44: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/44.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Necesitamos dos lazos for para resolver los números primos y una variable para ejecutar los
números impares.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int i,j,r,l,c,f,op,a;
do
{
f=0;
a=1;
clrscr();
for (i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
gotoxy(32,2);printf("serie de datos");
gotoxy(5,3);printf("Limite: ");scanf("%d",&l);
for(i=1;i<=l;i++)
{
c=0;
Impresión del factorial
Inicio del programa
Declaración de variables
Inicio del do
Borrar el programa
Ciclo for para el borde
Impresión del borde
Ingreso del límite
![Page 45: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/45.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
for(j=1;j<=i;j++)
{
r=i%j;
if(r==0)
{
c=c+1;
}
}
if(c==2)
{
gotoxy(15,5);printf("1");
gotoxy(18+f,5);printf("%d",i);
f=f+3;
a=a+2;
}
gotoxy(15+f,6);printf("--");
gotoxy(15+f,7);printf("%d",a);
}
gotoxy(5,22);printf("Desea salir 1/0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Ciclos for para el numerador
y denominador
Condiciones con sentencia if
Impresión de respuestas
Ingreso de la opción para
salir o regresar While para la opción
Fin del programa
![Page 46: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/46.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 22
Enunciado:
Diseñe un programa que me permita generar la siguiente serie de datos: como numerador
los numeros impares y como denominador la serie fibonasi.
Análisis:
![Page 47: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/47.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Necesitamos un ciclo for para generar los numero impares y la serie de Fibonacci y después
presentamos los valores.
Documentación:
#include<stdio.h>
#include<conio.h>
void main()
{
int i,a,b,c,l,p,cv,op;
do
{
clrscr();
for (i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
gotoxy(35,2);printf("Serie de datos");
gotoxy(15,4);printf("Limite: ");scanf("%d",&l);
a=1;
b=0;
Inicio del programa
Declaración de variables
Inicio del do
Bibliotecas
Ciclo for para el borde
Impresión del borde
Borrar el programa
Ingreso del límite
Intercambio de valores
![Page 48: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/48.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
p=1;
cv=0.5;
for(i=1;i<=l;i++)
{
c=a+b;
a=b;
b=c;
cv=cv+3;
gotoxy(15+cv,9);printf("%d",c);
gotoxy(15+cv,8);printf("--");
gotoxy(15+cv,7);printf("%d",p);
p=p+2;
}
gotoxy(15,22);printf("Desea salir 1/0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido
Ciclo for para la serie
Impresión de resultados
Impresión del borde
While para la opción
Fin del programa
![Page 49: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/49.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 23
Enunciado:
Diseñe un programa que me presente un menú de opciones con las operaciones básicas,
estas son suma, resta, multiplicación, división y una opción para salir del programa.
Análisis:
Se ingresa la opción que desee realizar, si elije la suma, se ingresa los numeros que desee
sumar de igualmanera con la resta división y multiplicación se debe ingresar los dos
números, para la resta el segundo numero no debe ser mayor que el primero caso contrario
seguirá pidiendo el numero hasta que cumpla la condición n2>n1, si desea volver a repetir
el proceso deberá seleccionar el 1 caso contrario en 0.
![Page 50: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/50.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Documentación:
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
void borde()
{
int i;
for (i=1;i<=80;i++)
{
gotoxy(i,1);printf(">");
gotoxy(i,24);printf(">");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf(">");
gotoxy(80,i);printf(">");
}
}
void main()
{
int c,d,op,S,R,M;
float a,b,DV,RD,PT;
do
{
clrscr();
borde();
gotoxy(35,3);printf("OPERACIONES BASICAS");
Librerías
Comienza la función para el borde
Declaración de variables
Se imprime el margen.
Se llama al borde
Declaración de variables
Comienzo del do
Borrar pantalla
Borrar pantalla
![Page 51: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/51.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(25,5);printf("1. SUMA");
gotoxy(25,6);printf("2. RESTA");
gotoxy(25,7);printf("3. DIVISION");
gotoxy(25,8);printf("4. MULTIPLICACION");
gotoxy(25,11);printf("5.SALIR");
gotoxy(23,13);printf("ELIGA UNA OPCION >");scanf("%d",&op);
switch(op)
{
case 1:
clrscr();
borde();
gotoxy(30,3);printf("SUMA");
gotoxy(4,4);printf("INGRESE PRIMER NUMERO >");
scanf("%d",&c);
gotoxy(4,5);printf("INGRESE SEGUNDO NUMERO >")
;scanf("%d",&d);
S=c+d;
gotoxy(10,8);printf("%d",c);
gotoxy(9,9);printf("+");
gotoxy(10,10);printf("%d",d);
gotoxy(9,11);printf("----");
gotoxy(10,12);printf("%d",S);
break;
case 2:
clrscr();
borde();
gotoxy(30,3);printf("RESTA");
gotoxy(4,4);printf("INGRESE PRIMER NUMERO >");
Se imprime el menú
Caso 1
Se llama al borde
Termina el primer caso
Comienza en switch y lee la opción elegida
Se imprime los numeros a sumar y la
suma.
Se ingresan los numeros a
sumar.
Suma.
Se ingresan los numeros a
restar.
Caso 2
Se llama al borde
![Page 52: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/52.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
scanf("%d",&c);
do{
gotoxy(28,5);printf(" ");
gotoxy(4,5);printf("INGRESE SEGUNDO NUMERO >");scanf("%d",&d);
}while(d>c);
R=c-d;
gotoxy(10,8);printf("%d",c);
gotoxy(10,10);printf("%d",d);
gotoxy(9,9);printf("-");
gotoxy(9,11);printf("----");
gotoxy(10,12);printf("%d",R);
break;
case 3:
clrscr();
borde();
gotoxy(30,3);printf("DIVISION");
gotoxy(4,4);printf("INGRESE EL PRIMER NUMERO >");
scanf("%f",&a);
gotoxy(4,5);printf("INGRESE EL SEGUNDO NUMERO >");
scanf("%f",&b);
DV=a/b;
gotoxy(10,8);printf("%2.0f",a);
gotoxy(16,8);printf("%2.0f",b);
gotoxy(14,8);printf("/");
gotoxy(20,8);printf("=");
gotoxy(24,8);printf("%2.2f",DV);
break;
case 4:
Resta.
Se ingresan los numeros a
dividir.
División.
Caso 3
Se llama al borde
Se imprime los numeros a dividir y la
división
Termina el segundo caso
Se imprime los números a
restar y la resta
![Page 53: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/53.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
clrscr();
borde();
gotoxy(30,3);printf("MULTIPLICACION");
gotoxy(4,4);printf("INGRESE EL PRIMER NUMERO >");
scanf("%d",&c);
gotoxy(4,5);printf("INGRESE EL SEGUNDO NUMERO >");
scanf("%d",&d);
M=c*d;
gotoxy(10,8);printf("%d",c);
gotoxy(9,9);printf("*");
gotoxy(10,10);printf("%d",d);
gotoxy(9,11);printf("----");
gotoxy(10,12);printf("%d",M);
break;
break;
case 5:
exit(0);
break;
}
gotoxy(2,22);printf("1 continuar 0 salir");
scanf("%d",&op);
}while(op==1);
getch();
}
Se ingresan los numeros a
multiplicar.
Multiplicación
Caso 4 Se llama al borde
Se imprime los numeros a dividir y la
división.
Termina el segundo caso
Termina el segundo caso
Caso 5 finalizar
Fin del programa
![Page 54: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/54.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
![Page 55: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/55.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 56: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/56.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 24
Enunciado:
Diseñe un programa con un menú de opciones que me permita calcular las áreas y
perímetros de las 4 figuras básicas: circulo, cuadrado, triangulo, rectángulo.
Análisis:
Utilizamos la función borde para que permanezca durante la ejecución del programa el
borde, además el swith para lograr ejecutar las opciones de menú mediante case y
finalizando con break, y el ciclo do while para que el programa se repita n número de
veces.
Documentación:
#include<stdio.h>
#include<conio.h> LIBRERIAS
#include<stdlib.h>
void borde() Función borde
{
int i,ope; Declaracion de variables
clrscr(); Borrar pantalla
for(i=2;i<=80;i++) Ciclo for para el borde
{
gotoxy(i,2);printf("*");
gotoxy(i,24);printf("*");
} Se imprime el margen
for(i=2;i<=24;i++)
{
gotoxy(2,i);printf("*");
gotoxy(80,i);printf("*");
![Page 57: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/57.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
}
void main() Inicio de programa
{
int la,ope,pcu,acu,r,opec; Declaración de variables
float cp,ca;
do inicio primer ciclo do while
{
clrscr(); borrar la pantalla
borde(); Se llama al borde
gotoxy(33,4);printf("<< AREA Y PERIMETRO >>");
gotoxy(20,6);printf("1.CUADRADO");
gotoxy(20,8);printf("2.CIRCULO"); impresión del menú
gotoxy(20,10);printf("3.TRIANGULO");
gotoxy(20,12);printf("4.RECTANGULO");
gotoxy(20,14);printf("5.SALIR");
gotoxy(15,18);printf("<< INGRESE UNA OPCION: ");
scanf("%d",&ope); escaneo de la opción
switch(ope) comienzo del switch
{
case 1: incio de la primera opcion
do inicio del ciclo do while
{
clrscr(); borrar la pantalla
borde(); Se llama al borde
gotoxy(20,6);printf("<< AREA Y PERIMETRO DEL CUADRADO >>");
opcion del menu
gotoxy(10,8);printf("INGRESE EL LADO: ");
Impresión del titulo
Impresión del lado
![Page 58: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/58.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
scanf("%d",&la);
pcu=la+la+la+la;
acu=la*la;
gotoxy(10,12);printf("EL PERIMETRO ES :");
gotoxy(29,12);printf("%d + %d + %d + %d = %d",pcu);
gotoxy(10,14);printf("EL AREA ES :");
gotoxy(29,14);printf("%d * %d = %d ",la,la,acu);
gotoxy(5,20);printf("PULSE 1 PARA REALIZAR OTRA OPERACION O 0 PARA
SALIR : ");
scanf("%d",&opec);
}
while(opec==1);
break;
case 2:
do
{
float ar,pe,ra;
const float pi=3.141632;
clrscr();
borde();
gotoxy(20,6);printf("<< AREA Y PERIMETRO DEL CIRCULO >>");
gotoxy(10,8);printf("INGRESE EL RADIO :");
scanf("%f", &ra);
ar=2*(pi*ra);
pe=pi*(ra*ra);
gotoxy(10,12);printf("EL PERIMETRO ES: %7.3f",pe);
gotoxy(10,14);printf("EL AREA ES: %7.3f",ar);
gotoxy(5,20);printf("PULSE 1 PARA REALIZAR OTRA OPERACION O 0
PARA SALIR : ");
Operaciones de área y perímetro
Impresión de área y perímetro
Fin del ciclo
do while
Fin del primer case
Inicio case 2
Inicio 2º do while
Declaración de variables
Borrar la pantalla
Se llama al borde
Área y perímetro del
círculo
Ingreso del radio
Operaciones de área y perímetro
Impresión de área y perímetro
Fin 2º
ciclo do
while
![Page 59: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/59.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
scanf("%d",&opec);
}
while(opec==1);
break;
case 3:do
{
int l1,ba,l3,l2,ato,pet,ha;
clrscr();
borde();
gotoxy(20,4);printf("<< AREA Y PERIMETRO DEL TRIANGULO >>");
gotoxy(13,6);printf("PERIMETRO");
gotoxy(7,8);printf("<< INGRESE EL 1er LADO: ");
scanf("%d",&l1);
gotoxy(7,10);printf("<<INGRESE EL 2do LADO: ");
scanf("%d",&l2);
gotoxy(7,12);printf("<<INGRESE EL 3er LADO: ");
scanf("%d",&l3);
pet=l1+l2+l3;
gotoxy(9,14);printf(" ES IGUAL :%d ",pet);
gotoxy(50,6);printf("AREA");
gotoxy(40,8);printf("<< INGRESE LA BASE: ");
scanf("%d",&ba);
gotoxy(40,10);printf("<< INGRESE LA ALTURA: ");
scanf("%d",&ha);
ato=(ba*ha)/2;
gotoxy(43,14);printf(" ES IGUAL :%d ",ato);
gotoxy(5,20);printf("PULSE 1 PARA REALIZAR OTRA OPERACION O 0 PARA
SALIR : ");
scanf("%d",&opec);
Fin case 2
Inicio case3
Inicio 3º ciclo do while
Operación del perímetro
Declaración variable
Borrar pantalla
Se llama al borde
Impresión de los
lados del triangulo
Operación del área
Impresión de la base y la altura
Impresión del área
Impresión del perímetro
![Page 60: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/60.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
while(opec==1);
break;
case 4:
do
{
int per,bar,are,har;
clrscr();
borde();
gotoxy(20,4);printf("<< AREA Y PERIMETRO DEL RECTANGULO >>");
gotoxy(10,8);printf("<< INGRESE LA BASE :");
scanf("%d",&bar);
gotoxy(10,10);printf("<< INGRESE LA ALTURA: ");
scanf("%d",&har);
per=(2*bar)+(2*har);
gotoxy(10,14);printf("EL PERIMETRO ES :%d",per );
are=bar*har;
gotoxy(10,16);printf("EL AREA ES :%d ",are);
gotoxy(5,20);printf("PULSE 1 PARA REALIZAR OTRA OPERACION O 0 PARA
SALIR : ");
scanf("%d",&opec);
}
while(opec==1);
break;
case 5:
exit(5);
break;
}
Fin del 3º ciclo do while
Fin del 3º ciclo do while
Borrar la pantalla
Se llama al borde
Operación del perímetro
Impresión del perímetro
Operación del área
Inicio del 4º do while
Declaración de variables
Inicio de 4º case
Fin del 4º case
Inicio 5º case
Fin del 5º case
Impresión del área
Función salir
![Page 61: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/61.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(5,20);printf("PULSE 1 PARA REALIZAR OTRA OPERACION O 0 PARA
SALIR : ");scanf("%d",opec);
}
while(opec==0);
getch();
}
Corrido del programa:
Fin del ciclo do while inicial
Fin del programa
![Page 62: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/62.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 63: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/63.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 64: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/64.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 25
Enunciado:
Diseñe un programa a través de un menú de opciones que me permita calcular las 6
operaciones básicas con sus respectivas validaciones. Estas son suma, resta, multiplicación,
división, potenciación y radicación.
Análisis:
Se ingresa la opción que desee realizar, si elige la suma, se ingresa los números que desee
sumar de igual manera con la resta división y multiplicación se debe ingresar los dos
números, para la resta el segundo número no debe ser mayor que el primero caso contrario
seguirá pidiendo el numero hasta que cumpla la condición n2>n1, si desea volver a repetir
el proceso deberá seleccionar el 1 caso contrario en 0.
Documentación:
#include<math.h>
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
void borde()
{
int i;
for (i=1;i<=80;i++)
{
gotoxy(i,1);printf(">");
gotoxy(i,24);printf(">");
}
for(i=1;i<=24;i++)
Librerías
Comienza la función para el borde
Declaración de variables
Se imprime el margen.
![Page 65: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/65.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
{
gotoxy(1,i);printf(">");
gotoxy(80,i);printf(">");
}
}
void main()
{
int c,d,op,S,R,M;
float a,b,DV,RD,PT;
do
{
clrscr();
borde();
gotoxy(35,3);printf("OPERACIONES BASICAS");
gotoxy(25,5);printf("1. SUMA");
gotoxy(25,6);printf("2. RESTA");
gotoxy(25,7);printf("3. DIVISION");
gotoxy(25,8);printf("4. MULTIPLICACION");
gotoxy(25,9);printf("5. RADICACION");
gotoxy(25,10);printf("6. POTENCIACION");
gotoxy(25,11);printf("7.SALIR");
gotoxy(23,13);printf("ELIGA UNA OPCION >");scanf("%d",&op);
switch(op)
{
case 1:
clrscr();
borde();
gotoxy(30,3);printf("SUMA");
Se llama al borde
Declaración de variables
Se imprime el menu
Comienzo del do
Caso 1
Se llama al borde
Borrar pantalla
Borrar pantalla
Comienza en switch y lee la opción elegida
![Page 66: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/66.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(4,4);printf("INGRESE PRIMER NUMERO >");scanf("%d",&c);
gotoxy(4,5);printf("INGRESE SEGUNDO NUMERO >");scanf("%d",&d);
S=c+d;
gotoxy(10,8);printf("%d",c);
gotoxy(9,9);printf("+");
gotoxy(10,10);printf("%d",d);
gotoxy(9,11);printf("----");
gotoxy(10,12);printf("%d",S);
break;
case 2:
clrscr();
borde();
gotoxy(30,3);printf("RESTA");
gotoxy(4,4);printf("INGRESE PRIMER NUMERO >");
scanf("%d",&c);
do{
gotoxy(28,5);printf(" ");
gotoxy(4,5);printf("INGRESE SEGUNDO NUMERO >");
scanf("%d",&d);
}while(d>c);
R=c-d;
gotoxy(10,8);printf("%d",c);
gotoxy(10,10);printf("%d",d);
gotoxy(9,9);printf("-");
gotoxy(9,11);printf("----");
gotoxy(10,12);printf("%d",R);
break;
case 3:
Termina el primer caso
Se imprime los numeros a sumar y la
suma.
Se ingresan los
numeros a
sumar.
Suma.
Se ingresan los numeros a
restar.
Caso 2
Se llama al borde
Se imprime los numeros a restar y la rest
![Page 67: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/67.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
clrscr();
borde();
gotoxy(30,3);printf("DIVISION");
gotoxy(4,4);printf("INGRESE EL PRIMER NUMERO >");
scanf("%f",&a);
gotoxy(4,5);printf("INGRESE EL SEGUNDO NUMERO >");
scanf("%f",&b);
DV=a/b;
gotoxy(10,8);printf("%2.0f",a);
gotoxy(16,8);printf("%2.0f",b);
gotoxy(14,8);printf("/");
gotoxy(20,8);printf("=");
gotoxy(24,8);printf("%2.2f",DV);
break;
case 4:
clrscr();
borde();
gotoxy(30,3);printf("MULTIPLICACION");
gotoxy(4,4);printf("INGRESE EL PRIMER NUMERO >");
scanf("%d",&c);
gotoxy(4,5);printf("INGRESE EL SEGUNDO NUMERO >");
scanf("%d",&d);
M=c*d;
gotoxy(10,8);printf("%d",c);
gotoxy(9,9);printf("*");
gotoxy(10,10);printf("%d",d);
gotoxy(9,11);printf("----");
Se ingresan los numeros a
dividir.
División.
Se imprime los numeros a dividir y la
division
Termina el segundo caso
Se ingresan los numeros a
multiplicar.
División.
Caso 4
Se llama al borde
Se imprime los numeros a dividir y la
división.
![Page 68: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/68.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(10,12);printf("%d",M);
break;
case 5:
clrscr();
borde();
gotoxy(30,3);printf("RADICACION");
gotoxy(4,4);printf("INGRESE EL NUMERO >");scanf("%d",&c);
RD=sqrt(c);
gotoxy(10,8);printf("raiz cuadrada de %d",c);
gotoxy(30,8);printf("=");
gotoxy(33,8);printf("%2.2f",RD);
break;
case 6:
clrscr();
borde();
gotoxy(30,3);printf("POTENCIACION");
gotoxy(4,4);printf("INGRESE EL NUMERO >");scanf("%d",&c);
gotoxy(4,5);printf("INGRESE LA POTENCIA >");scanf("%d",&d);
PT=pow(c,d);
gotoxy(10,8);printf("%d",c);
gotoxy(12,8);printf("^");
gotoxy(14,8);printf("%d",d);
gotoxy(15,8);printf("=");
gotoxy(17,8);printf("%4.0f",PT);
break;
case 7:
exit(0);
Termina el segundo caso
Se ingresan el numeros a
radicar.
Radicación.
Caso 5
Se llama al borde
Se imprime la radicación del numero
ingresado
Termina el segundo caso
Se ingresan la base y pa
potencia.
Potencia.
Caso 6
Se llama al borde
Se imprime la base y la potencia y a su vez
el resultado
Termina el segundo caso
Caso 7 finalizar
![Page 69: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/69.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
break;
}
gotoxy(2,22);printf("1 continuar 0 salir");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
Fin del programa
![Page 70: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/70.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 71: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/71.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 72: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/72.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 73: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/73.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 26
Enunciado:
Diseñe un programa que me permita realizar las conversiones básicas: metros, kilómetros,
decámetros, hectómetros.
Análisis:
Utilizamos el lazo for para realizar el borde de pantalla, la función borde para que
permanezca durante la ejecución del menú el mismo, el cual se realiza mediante el swich
iniciando con el case y finalizando con break, el ciclo do while nos ayuda a repetir el menú
n número de veces.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<math.h>
void borde()
{
int i;
for(i=2;i<=80;i++)
{
gotoxy(i,2); printf("-");
gotoxy(i,23); printf("-");
}
for(i=2;i<=23;i++)
{
gotoxy(2,i); printf("-");
gotoxy(80,i); printf("-");
Fin del programa
Función borde
Declaración variable
Ciclo for borde
Impresión borde
![Page 74: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/74.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
}
}
void main()
{
int op,opc,opci;
float kim1,hec,deca,metros,km,hec1,deca1;
do
{
clrscr();
borde();
gotoxy(15,5); printf("CONVERSIONES BASICAS");
gotoxy(10,7); printf("1. KILOMETROS");
gotoxy(10,8); printf("2. HECTOMETROS");
gotoxy(10,9); printf("3. DECAMETROS");
gotoxy(10,10); printf("4. METROS");
gotoxy(10,11); printf("5. SALIR");
gotoxy(16,15); printf("escoja la opcion que desee: "); scanf("%d",&op);
switch(op)
{
do
{
case 1:
clrscr();
borde();
gotoxy(15,5); printf("CONVERSION A KILOMETROS");
gotoxy(10,8); printf("INGRESE LOS KILOMETROS: "); scanf("%f",&km);
metros=km*1000;
deca=km*100;
hec=km*10;
Fin ciclo for
Función principal
Declaración variables
Ciclo do while
Borrar pantalla
Se llama al borde
Impresión menú
Fin del programa
Ciclo do while
Inicio case 1
Borrar pantalla
Se llama al borde
Ingreso kilometros
Operación conversiones
![Page 75: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/75.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(11,12); printf("EL RESULTADO EN HECTOMETROS ES: %2.0f",hec);
gotoxy(11,13); printf("EL RESULTADO EN DECAMETROS ES: %2.0f",deca);
gotoxy(11,14); printf("EL RESULTADO EN METROS ES: %2.0f",metros);
gotoxy(3,18); printf("realizar otra vez 1 salir 0: "); scanf("%d",&opci);
}
while (opci==1);
break;
do
{
case 2:
clrscr();
borde();
gotoxy(15,5); printf("CONVERSION A HECTOMETROS");
gotoxy(10,8); printf("INGRESE LOS HECTOMETROS: "); scanf("%f",&hec);
metros=hec*100;
deca=hec*10;
kim1=hec/10;
gotoxy(11,12); printf("EL RESULTADO EN KILOMETROS ES: %2.0f",kim1);
gotoxy(11,13); printf("EL RESULTADO EN DECAMETROS ES: %2.0f",deca);
gotoxy(11,14); printf("EL RESULTADO EN METROS ES: %2.0f",metros);
gotoxy(3,18); printf("realizar otra vez 1 salir 0: "); scanf("%d",&opci);
}
while(opci==1);
break;
do
{
case 3:
clrscr();
borde();
Impresión conversiones
Se llama al borde
Borrar pantalla
Inicio case 2
Ciclo do while
Fin case 1
Fin ciclo do while
Ingreso hectometros
Operación conversiones
Impresión conversiones
Fin ciclo do while
Fin case 2
Ciclo do while
INICIO CASE 3
Borrar pantalla
Llamo al borde
![Page 76: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/76.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(15,5); printf("CONVERSION A DECAMETROS");
gotoxy(10,8); printf("INGRESE LOS DECAMETROS: "); scanf("%f",&deca);
metros=deca*10;
hec1=deca/100;
kim1=deca/1000;
gotoxy(11,12); printf("EL RESULTADO EN KILOMETROS ES: %2.0f",kim1);
gotoxy(11,13); printf("EL RESULTADO EN HECTOMETROS ES: %2.0f",hec1);
gotoxy(11,14); printf("EL RESULTADO EN METROS ES: %2.0f",metros);
gotoxy(3,18); printf("realizar otra vez 1 salir 0: "); scanf("%d",&opci);
}
while(opci==1);
break;
do
{
case 4:
clrscr();
borde();
gotoxy(15,5); printf("CONVERSION A METROS");
gotoxy(10,8); printf("INGRESE LOS METROS: "); scanf("%f",&metros);
deca1=metros/1000;
hec1=metros/100;
kim1=metros/10;
gotoxy(11,12); printf("EL RESULTADO EN KILOMETROS ES: %2.0f",kim1);
gotoxy(11,13); printf("EL RESULTADO EN HECTOMETROS ES: %2.0f",hec1);
gotoxy(11,14); printf("EL RESULTADO EN DECAMETROS ES: %2.0f",deca1);
gotoxy(3,18); printf("realizar otra vez 1 salir 0: "); scanf("%d",&opci);
}
while(opci==1);
break;
Operación conversiones
Impresión conversiones
Fin ciclo do while
Fin case 3
Ciclo do while
Ingreso los decametros
Fin case 4
Borrar pantalla
Se llama al borde
Ingreso metros
Operación conversiones
Impresión conversiones
Fin ciclo do while
Inicio case 5
Fin case 4
![Page 77: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/77.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
case 5:
exit(0);
break;
}
gotoxy(4,20); printf("VOLVER AL MENU 1 SINO 0: "); scanf("%d",&opc);
}
while(opc==1);
getch();
}
Corrido del programa:
Función salir
Fin case 5
Fin ciclo do while
Fin del programa
![Page 78: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/78.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 79: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/79.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 80: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/80.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 27
Enunciado:
Diseñe un programa que me permita generar el siguiente menú de opciones de la siguiente
serie de datos:
1. Numeros Pares
2. Numeros Impares
3. Fibonasi
4. Factorial
5. Salir
Análisis:
Utilizamos la función borde para que permanezca durante la ejecución del programa, el
menú de opciones se realiza mediante el swich el cual permite elegir la opción a ejecutar el
cual se inicia con el case en el mismo que se encuentra todas la operaciones a realizarse y
finaliza con break, el ciclo do while el cual permite ejecutar el programa n número de
veces.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void borde()
{
int j;
for(j=1;j<=80;j++)
{
gotoxy(j,24);printf("*");
gotoxy(j,1);printf("*");
}
for(j=1;j<=24;j++)
{
Librerías
Función borde
Ciclo for del borde
Impresión del borde
Declaración de variables
![Page 81: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/81.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(1,j);printf("*");
gotoxy(80,j);printf("*");
}
}
void main()
{
int lim,oper,i,h=7,x,y,z,a=1,par=2,op,li,imp=1,l,limi;
float r;
do
{
a=1;
h=7;
clrscr();
borde();
gotoxy(25,3);printf(">>>SERIES DE DATOS<<<");
gotoxy(10,5);printf("1.-NUMEROS PARES");
gotoxy(10,7);printf("2.-NUMEROS IMPARES");
gotoxy(10,9);printf("3.-SERIE FIBONACCI");
gotoxy(10,11);printf("4.-FACTORIAL");
gotoxy(10,13);printf("5.-SALIR");
gotoxy(10,15);printf("INGRESE LA OPCION QUE DESEA GENERAR:
");scanf("%d",&op);
switch(op)
{
case 1:
clrscr();
borde();
gotoxy(25,3);printf("NUMEROS PARES");
gotoxy(5,5);printf("INGRESE EL LIMITE:");scanf("%d",&lim);
Función principal
Igualación de variables
Borrar la pantalla
Se llama al borde
Declaración de variables
Ciclo do while
Inicio ciclo
Impresión
del menú
Inicio swich
Inicio case 1
Borrar pantalla
Se llama al borde
![Page 82: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/82.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
for(i=1;i<=lim;i++)
{
h=h+3;
gotoxy(5+h,7);printf("%d",par);
par=par+2;
}
break;
case 2:
clrscr();
borde();
gotoxy(25,3);printf("NUMEROS IMPARES");
gotoxy(5,5);printf("INGRESE EL LIMITE:");scanf("%d",&li);
for(i=1;i<=li;i++)
{
h=h+3;
gotoxy(5+h,7);printf("%d",imp);
imp=imp+2;
}
break;
case 3:
clrscr();
borde();
gotoxy(25,3);printf("SERIE FIBONACCI");
gotoxy(5,5);printf("INGRESE EL LIMITE:");scanf("%d",&l);
x=1;
y=0;
for(i=1;i<=l;i++)
{
Contador
Impresión números pares
Operación numero par
Fin case 1
Inicio case2
Borrar pantalla
Se llama al borde
Ingreso del límite números
impares
Ciclo for del límite
Contador
Fin case 2
Operación número impar
Inicio case 3
Igualación de variables
Ciclo for límite
Borrar pantalla
Librerías
Impresión números impares
![Page 83: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/83.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
h=h+3;
z=x+y;
gotoxy(5+h,7);printf("%d",z);
x=y;
y=z;
}
break;
case 4:
clrscr();
borde();
gotoxy(25,3);printf("FACTORIAL");
gotoxy(5,5);printf("INGRESE EL LIMITE:");scanf("%d",&limi);
r=1;
for(i=1;i<=limi;i++)
{
h=h+3;
r=r*i;
gotoxy(5,7+i);printf("%8.0f",r);
}
break;
case 5:
exit(0);
break;
}
gotoxy(15,23);printf("PRESS 1 PARA CONTINUAR 0 SALIR: ");
scanf("%d",&oper);
}
Contador
Impresión serie Fibonacci
Operaciones de la factorial
Ciclo for del límite
Librerías
Ingreso del límite del factorial
Se llama al borde
Borrar pantalla
Inicio case 4
Fin case 3
Igualación de variables
Fin case 4
Inicio case 5
Función salir
Fin case 5
Fin ciclo
do while
Impresión de la factorial
![Page 84: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/84.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
while(oper==1);
getch();
}
Corrido del programa:
Fin del programa
![Page 85: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/85.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 86: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/86.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 87: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/87.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
RICARDO Programa 28
Diseñe un programa que me permita realizar un borde utilizaciones funciones.
Análisis:
Se realiza un for en una función llamada void borde (), en el se realiza el ciclo for
correspondiente, se inicia el programa llamando a dicha función, se imprime el margen de
la pantalla como funcion
Documentación
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int i,op,opc,conta,p,contav;
float tv,venta,valo;
void borde()
{
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("-");
gotoxy(i,24);printf("-");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("-");
gotoxy(80,i);printf("-");
}
}
void main()
{
clrscr();
borde();
getch();
}
Corrido
Librerías
Inicio de la funcion
Declaración de variables
Inicio for
Impresión
Inicio del ciclo for
Impresión
Inicio del programa
Impresión del margen
![Page 88: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/88.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 29
Enunciado:
Diseñe un programa utilizando funciones que me permita generar n numeros naturales
Análisis:
Utilizando funciones se realiza el borde, y la generación de números naturales dentro d las
mismas utilizando ciclos FOR y DO WHILE.
Documentación:
#include<stdio.h>
#include<conio.h>
int i,op,limite,fila,col;
void borde()
{
for(i=2;i<=80;i++)
{
Librerías
Declaración de variables tipo enteras
![Page 89: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/89.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
gotoxy(i,2); printf("-");
gotoxy(i,23); printf("-");
}
for(i=2;i<=23;i++)
{
gotoxy(2,i); printf("-");
gotoxy(80,i); printf("-");
}
}
void numeros (int limite1)
{
fila=8;
col=8;
for(i=1;i<=limite1;i++)
{
gotoxy(col,fila); printf("%d",i);
fila=fila+1;
if(fila==18)
{
col=col+10;
fila=8;
fila=fila+1;
}
}
}
void main ()
{
do
{
clrscr();
borde();
gotoxy(10,4); printf("SERIE DE NUMEROS NATURALES");
gotoxy(15,5); printf("Ingrese el limite: "); scanf("%d",&limite);
numeros(limite);
gotoxy(3,22); printf("presione 1 para volver a hacer o 0 para salir: ");
scanf("%d",&op);
}
while(op==1);
getch();
}
Inicio del programa
Función para generar
numeros naturales
Blanqueo de pantalla
Fin del programa
Ingreso y escaneo de datos
Función para generar el
borde
Llamado de la función borde
Llamado de la función limite
![Page 90: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/90.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 30
Enunciado:
Diseñe un programa utilizando funciones y un menú de opciones que me permita realizar el
siguiente proceso.
Serie de datos
1. Verificar numeros pares
2. Verificar numeros impares
3. Verificar numeros primos
4. Salir
Análisis:
![Page 91: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/91.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Utilizamos la función borde la mima que permite que se mantenga durante la ejecución del
programa, mediante el ciclo for se realiza el borde de pantalla, además para realizar el
menú de opciones se utiliza el swich el cual nos permite realizar las opciones que se
encuentran dentro del menú, el cual se inicia con case donde se llama a las funciones
realizadas dentro de un ciclo do while y se finaliza con el break, el ciclo do while permite
realizar la ejecución del programa n número de veces.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int numero,op,rp,ri,i,c;
void borde()
{
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
}
void par(int num)
{
rp=num%2;
if(rp==0)
Librerías
Declaración de variables
Impresión borde
Ciclo for borde
Función borde
Función par
Operación numero par
Comparación
![Page 92: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/92.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
{
gotoxy(20,5);printf("ES PAR");
}
}
void impar(int num)
{
ri=num%2;
if(ri==1)
{
gotoxy(30,12);printf("ES IMPAR");
}
}
void primo(int num)
{
c=0;
for(i=1;i<=numero/2;i++)
if(numero%i==0)
c=c+1;
if(c==2)
{
gotoxy(20,12); printf ("NO ES PRIMO",numero);
}
else
{
gotoxy(20,12);printf ("ES PRIMO",numero);
}
}
void main()
{
Impresión numero par
Función impar
Operación número impar
Condición
Impresión número impar
Inicio función primo
Igualación de variable
Ciclo for número primo
Fin función impar
Condición Contador
Condición 2
Impresión número primo
Caso contrario
Impresión número primo
Fin función primo
Función principal
Fin función par
![Page 93: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/93.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
do
{
clrscr();
borde();
gotoxy(35,2);printf("<< SERIE DE DATOS >>");
gotoxy(15,5);printf("1.VERIFICAR DI ES PAR");
gotoxy(15,7);printf("2.VERIFICAR SI ES IMPAR");
gotoxy(15,9);printf("3.VERIFICAR SI ES PRIMO");
gotoxy(15,11);printf("4.SALIR");
do
{
gotoxy(29,13);printf(" ");
gotoxy(15,13);printf("ELIJA UNA OPCION: ");scanf("%d",&op);
}while(op>4);
switch(op)
{
case 1:
clrscr();
borde();
gotoxy(33,3);printf("VERIFICAR SI ES PAR");
gotoxy(15,5);printf("NUMERO: ");scanf("%d",&numero);
par(numero);
break;
case 2:
clrscr();
borde();
gotoxy(33,3);printf("VERIFICAR SI ES IMPAR");
gotoxy(15,5);printf("NUMERO: ");scanf("%d",&numero);
impar(numero);
Inicio ciclo do while
Borra pantalla
Se llama al borde
Impresión menú
Inicio ciclo do while
Inicio case 1
Escaneo opción
Fin ciclo do while
Ingreso número
verificación impar
Inicio swich
Se llama al borde
Titulo case 1
Ingrese el número
Se llama a la función par
Fin case 1
Inicio case2
Se llama al borde
Se llama a la función impar
![Page 94: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/94.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
break;
case 3:
clrscr();
borde();
gotoxy(33,3);printf("VERIFICAR SI ES PRIMO");
gotoxy(15,5);printf("NUMERO: ");scanf("%d",&numero);
primo(numero);
break;
case 4:
exit(0);
break;
}
gotoxy(15,22);printf("Desea salir 1/0: ");scanf("%d",&op);
}while(op==1);
getch();}
Corrido de programa:
Fin ciclo do while
Inicio case 4
Fin case 3
Se llama función número primo
Ingreso número verificación
primo
Se llama al borde
Borrar pantalla
Inicio case 3
Función salir
Fin case 4
Fin programa
![Page 95: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/95.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 96: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/96.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 31
Enunciado:
Diseñe un programa utilizando funciones que me permita calcular el valor de las
comisiones por venta de vehículos según los siguientes condicionamientos, existen 3
vendedores, el vendedor 1, el vendedor 2, el vendedor 3, se asigna un valor de comision si:
La venta es ≥ 8500 y ≤ 13500 la comisión es del 3%
La venta es > 13500 y ≤ 18000 la comisión es del 8%
La venta es > 18000 la comisión es del 11%
Obtenga el numero de ventas realizadas por vendedor, el total de ventas realizadas, el total
de comisiones recibidas y el total general de todas las comisiones.
Análisis:
![Page 97: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/97.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Se elige que vendedor es del menú, se aplican las operaciones especificadas se ingresa la
venta, se obtiene el resultado usando la opción 4 del menú de opciones, si desea repetir el
proceso ingresa el 1 si desea salir se elige el 0.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int i,op,opc,conta,p,contav;
float tv,venta,valo,tore,tore1,tore2,sumto;
void borde()
{
for(i=1;i<=80;i++)
{
gotoxy(i,1);printf("*");
gotoxy(i,24);printf("*");
}
for(i=1;i<=24;i++)
{
gotoxy(1,i);printf("*");
gotoxy(80,i);printf("*");
}
}
void v1(int venta)
{
if(venta<8500)
{
}
else
{
if(venta>=8500 && venta<=13500)
{
tv=venta*0.03;
gotoxy(10,11); printf("la comision es: %f",tv);
}
else
{
if(venta>13500 && venta<=18000)
{
tv=venta*0.08;
gotoxy(10,11); printf("la comision es: %f",tv);
}
else
{
Librerías
Declaración de variables
Función borde
Inicio de la función para el programa
principal
Proceso del if con el caso contrario e impresiones de resultados
Inicio del if
![Page 98: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/98.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
tv=venta*0.11;
gotoxy(10,11); printf("la comision es : %f",tv);
}
}
}
}
void main()
{
p=0;
do
{
p=p+1;
clrscr();
borde();
gotoxy(10,3);printf("COMISION DE VENTAS DE VEHICULOS
EMPRESA XYZ ");
gotoxy(18,5);printf("1.Vendedor 1");
gotoxy(18,6);printf("2.Vendedor 2");
gotoxy(18,7);printf("3.Vendedor 3");
gotoxy(18,8);printf("4.Total de ventas");
gotoxy(18,9);printf("5.Salir");
gotoxy(18,12);printf("Elija opcion: ");scanf("%d",&op);
switch(op)
{
conta=0;
contav=0;
valo=0;
do
{
case 1:
clrscr();
borde();
conta=conta+1;
gotoxy(10,5);printf("Vendedor 1: ");scanf("%f",&venta);
gotoxy(15,20);printf("Ingresar otra venta 1 sino 0: ");scanf("%d",&opc);
contav=contav+1;
gotoxy(10,8); printf("total de ventas: %d",contav);
v1(venta);
valo=valo+venta;
venta=venta+venta;
gotoxy(10,10); printf("total ventas: %2.2f",venta);
tore=venta+tv;
gotoxy(10,12); printf("Total a recibir: %2.2f",tore);
}
while(opc==1);
break;
do
Inicio del programa principal
Inicio del do
Impresión del menu
Inicio del switch para el
menu
Igualación de variables a 0
Comienzo del do
Lectura e impresión del vendedor 1
Llamado de la fusión
Contador del total vendido
Fin del do
![Page 99: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/99.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
{
case 2:
clrscr();
borde();
conta=conta+1;
gotoxy(10,5);printf("Vendedor 2: ");scanf("%f",&venta);
gotoxy(15,20);printf("Ingresar otra venta 1 sino 0: ");
scanf("%d",&opc);
contav=contav+1;
gotoxy(10,8); printf("total de ventas: %d",contav);
v1(venta);
valo=valo+venta;
venta=venta+venta;
gotoxy(10,10); printf("total ventas: %f",venta);
tore1=venta+tv;
gotoxy(10,12); printf("Total a recibir: %2.2f",tore1);
}
while(opc==1);
break;
do
{
case 3:
clrscr();
borde();
conta=conta+1;
gotoxy(10,5);printf("Vendedor 3: ");scanf("%f",&venta);
gotoxy(15,20);printf("Ingresar otra venta 1 sino 0: ");
scanf("%d",&opc);
contav=contav+1;
gotoxy(10,8); printf("total de ventas: %d",contav);
v1(venta);
valo=valo+venta;
venta=venta+venta;
gotoxy(10,10); printf("total ventas: %f",venta);
tore2=venta+tv;
gotoxy(10,12); printf("Total a recibir: %2.2f",tore2);
}
while(opc==1);
break;
case 4:
clrscr();
borde();
sumto=tore+tore1+tore2;
gotoxy(15,8);
printf("Total general de los 3 vendedrores: %2.2f",sumto);
break;
case 5:
Lectura e impresión del vendedor 1
Llamado de la fusión
Contador del total vendido
Fin del do
Lectura e impresión del vendedor 1
Llamado de la fusión
Contador del total vendido
Fin del do
Contador del total vendido
de los 3 vendedores
Fin del do
![Page 100: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/100.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
exit(0);
break;
}
gotoxy(15,22);printf("VOLVER AL MENU 1 SALIR 0: ");scanf("%d",&op);
}while(op==1);
getch();
}
Corrido del programa:
![Page 101: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/101.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 102: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/102.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
![Page 103: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/103.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Programa 32
Enunciado:
Diseñe un programa permita obtener el valor a pagar por concepto consumo de agua
potable según el siguiente condicionamiento.
Se ingresa desde teclado el nombre del abonado y las lecutras del medidor del mes antesior
y del mes actual, considerando siempre que la lecutura actual no puede ser menor que la
anterio, la diferenciaentre las dos lecturas me permite obtener el consumo actual las mismas
que tiene el siguiente condicionamiento
Si el consumo es ≤ 30 litros de agua, se le factura el valor minimo que son Usd.
6,00
Si el consumo es > 30 y ≤ que 200 se cobra, 1,50 centavos cada litro de agua
Si el cosnumo es > 200 litros se cobra 2,75 cada litro
A este importe total obtenido se le añade los impuestos de ley
5% Basurero
%5 IECE
3% Municipio
Obtenga el costo total de la factura
El programa debe funcionar para n usuarios al final se visualiza el numero total de usuarios
recaudados y el valor total recaudado.
Análisis:
Se ingresa el nombre de la persona la lectura de su pago anterior de agua potable y la
lectura actual de su consumo, se aplican las condiciones especificadas para el calculo
necesario, se obtiene el resultado; numero de litros consumidos, valor a pagar de agua,
valor a pagar de recolección de basura, valor del IECE, valor del municipio, valor total a
pagar y recaudación total del dia, si desea repetir el proceso ingresa el 1 si desea salir se
elige el 0.
Documentación:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int i,op,usu;
float lan,lac,total,to,bas,muni,iece,fac,total1=6.00,,factu3,facto;
Librerías Declaración de variables
![Page 104: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/104.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
char nombre[30];
void borde()
{
for(i=2;i<=80;i++)
{
gotoxy(i,2); printf("*");
gotoxy(i,23); printf("*");
}
for(i=2;i<=23;i++)
{
gotoxy(2,i); printf("*");
gotoxy(80,i); printf("*");
}
}
void main()
{
do
{
clrscr();
borde();
gotoxy(30,3);printf("FACTURA DE AGUA POTABLE");
gotoxy(3,5);printf("INGRESE EL NOMBRE DE LA CUENTA...:
");scanf("%s",&nombre);
do
{
gotoxy(37,6);printf(" ");
gotoxy(37,7);printf(" ");
gotoxy(3,6);printf("INGRESE LECTURA ANTERIOR.........: ");
scanf("%f",&lan);
gotoxy(3,7);printf("INGRESE LECTURA ACTUAL...........: ");
scanf("%f",&lac);
}
while (lac<lan);
total=lac-lan;
gotoxy(5,11);printf("NUMERO DE LITROS CONSUMIDOS....: %f",total);
if(total<=30)
{
bas=total1*0.05;
iece=total1*0.05;
muni=total1*0.03;
fac=total1+bas+iece+muni;
factu1=factu1+fac;
gotoxy(5,13);printf("VALOR A PAGAR DE AGUA : %f",total1);
gotoxy(5,14);printf("VALOR A PAGAR DE BASURERO..: %f",bas);
gotoxy(5,15);printf("VALOR A PAGAR DE IECE...........: %f",iece);
gotoxy(5,16);printf("VALOR A PAGAR DE MUNICIPIO..: %f",muni);
gotoxy(5,17);printf("VALOR A PAGAR DE FACTURA........: %f",fac);
Función borde
Inicio del programa principal
Ingreso de nombre lectura actual y anterior; utilización de un do para que el valor de lectura actual sea mayor que lectura anterior
Inicio del do
Cálculos
Impresión de
resultados
![Page 105: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/105.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
gotoxy(5,19);printf("TOTAL DE RECAUDACION............: %f",factu1);
}
else
{
if((total>30)&&(total<=200))
{
to=total*1.50;
bas=to*0.05;
iece=to*0.05;
muni=to*0.03;
fac=to+bas+iece+muni;
gotoxy(5,13);printf("VALOR A PAGAR DE AGUA...: %f",to);
gotoxy(5,14);printf("VALOR A PAGAR DE BASURERO......: %f",bas);
gotoxy(5,15);printf("VALOR A PAGAR DE IECE...........: %f",iece);
gotoxy(5,16);printf("VALOR A PAGAR DE MUNICIPIO....: %f",muni);
gotoxy(5,17);printf("VALOR A PAGAR DE FACTURA........: %f",fac);
factu2=factu2+fac;
gotoxy(5,19);printf("TOTAL DE RECAUDACION...: %f",factu2);
}
else
{
if(total>200)
{
to=total*1.50;
bas=to*0.05;
iece=to*0.05;
muni=to*0.03;
fac=to+bas+iece+muni;
gotoxy(5,13);printf("VALOR A PAGAR DE AGUA...: %f",to);
gotoxy(5,14);printf("VALOR A PAGAR DE BASURERO.....: %f",bas);
gotoxy(5,15);printf("VALOR A PAGAR DE IECE...........: %f",iece);
gotoxy(5,16);printf("VALOR A PAGAR DE MUNICIPIO...: %f",muni);
gotoxy(5,17);printf("VALOR A PAGAR DE FACTURA........: %f",fac);
factu3=factu3+fac;
gotoxy(5,19);printf("TOTAL DE RECAUDACION...: %f",factu3);
}
}
}
usu=usu+1;
gotoxy(2,22);printf("otro usuario 1 y 0 para salir");scanf("%d",&op);
}
while(op==1);
facto=factu1+factu2+factu3;
gotoxy(5,18);printf("TOTAL DE USUARIOS......: %d",usu);
gotoxy(5,19);printf("RECAUDACION: %f",facto);
getch();
}
Caso contrario
Inicio del if
Cálculos
Caso contrario
Impresión de
resultados
Inicio del if
Cálculos
Contador
Impresión de
resultados
Contador
Impresión de recaudacion
![Page 106: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/106.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2
Corrido del programa:
![Page 107: Elemento2](https://reader033.fdocuments.es/reader033/viewer/2022052904/557bd0c8d8b42a8a1d8b52f3/html5/thumbnails/107.jpg)
PROGRAMACIÓN I UNIVERSIDAD TÉCNICA DE AMBATO Elemento 2