Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Algoritmos 1
Algoritmos 1
Algoritmo
Inicio
Leer c, num, fac
Leer num
Fac:1
Desde c=1 hasta c<=num hacer
fac=fac*c
Fin Desde
Imprimir num, fac
Fin
Variables
fac : acumulador del valor del factorial del numero ingresado.
c : cuenta el número de repeticiones.
num : el número cuyo factorial se va ha calcular.
Programa
#include<stdio.h>
main(void)
{int c,num;
float fac;
printf("ingrese el número n para calcular su factorial ");
scanf("%d",&num);
fac=1;
for(c=1;c<=num;c++)
fac=fac*c;
printf("el factorial de %d es %lf",num,fac);
}
Ejercicio 22
La segunda parte debe informar sobre el pago total promedio para los empleados de al
menos 55 años. El nombre y el pago total para el empleado de menos de 55 años con
máximo pago total (se puede suponer que no hay empate).
Ejemplo
La solución sería: Empleado menor de 55 años con máximo sueldo es Sergio con 460
soles.
El promedio del sueldo para los empleados mayor de 55 años es: 342.667 soles
Algoritmo
Inicio
Declare me, mp, promedio, nombre, nme, nht, ph, total, neto, impuesto, i, edad
Leer me, mp, promedio, nombre, nme, nht, ph, total, neto, impuesto, i, edad
mp:0;
promedio:0;
Desde i=1 hasta i=10 hacer
leer nombre, nht, ph, edad
si nht>40 entonces total:40*ph+(nht-40)*(ph+0.5*ph)
si no total:nht*ph
si total>200 entonces impuesto:200*0.1+(total-200)*0.2
si no impuesto:total*0.1
neto:total-impuesto
imprimir nombre, nht, ph, edad
imprimir total, impuesto, neto
si edad>=55 entonces promedio:promedio+neto/3
si no
si mp<neto entonces
mp:neto;
me:edad;
nme:nombre
fin si
fin si
fin Desde
imprimir promedio
imprimir nme mp me
Fin
Variables
me : la máxima edad.
mp : máximo promedio.
promedio : promedio que se calcula.
nombre : nombre que se ingresa por el teclado.
nme : nombre del que tiene la máxima edad.
nht : número de horas trabajadas.
ph : pago por hora normal.
total : total sin descuentos.
neto : neto a pagar.
impuesto : impuesto
i : contador
edad : edad que se ingresa por el teclado.
Programa
#include<stdio.h>
#include<string.h>
main(void)
{
float me,mp;
float promedio;
char nombre[20];
char nme[20];
float nht,ph;
float total, neto,impuesto;
int i,edad;
mp=0;
promedio=0;
for(i=1;i<=10;i++)
{ printf("\n ingrese nombre: ");
7 scanf("%s",nombre);
printf("Ingrese número de horas trabajadas: ");
scanf("%f",&nht);
printf("Ingrese el valor del pago por hora: ");
scanf("%f",&ph);
printf("Ingrese la edad: ");
scanf("%d",&edad);
if(nht>40) total=40*ph+(nht-40)*(ph+0.5*ph);
else total=nht*ph;
if(total>200) impuesto=200*0.1+(total-200)*0.2;
else impuesto=total*0.1;
neto=total-impuesto;
printf("%s trabajo %lf horas, pago por hora %lf, edad %d años
\n",nombre,nht,ph,edad);
printf("total %lf, impuesto %lf, neto %lf soles ",total,impuesto,neto);
if(edad>=55) promedio=promedio+neto/3;
else
{ if(mp<neto)
{mp=neto;
me=edad;
strcpy(nme,nombre);
}
}
}
printf("\n\n pago promedio: %lf soles",promedio);
printf("\n %s gana %lf soles edad: %lf años\n",nme,mp,me);
}
Ejercicio 23
Algoritmo
Declare i, n1, n2, n3, promedio, naa, na18, nombre, condición.
Inicio
Leer i, n1, n2, n3, promedio, naa, na18, nombre, condición.
naa:0;
na18:0;
Desde i=1 hasta i<=40 hacer
12ºleer nombre, n1, n2, n3
promedio:(n1+n2+n3)/3
if promedio>12 entonces
condicion:1;
naa:naa+1;
si no
condicion:2
fin si
si condicion=1 entonces imprimir nombre, n1, n2, n3, promedio
sino imprimir nombre, n1, n2, n3, promedio
si promedio>=18 entonces na18:na18+1
Fin Desde
Imprimir naa, na18
Fin
Variables
i : contador
n1, n2, n3 : notas.
Promedio : promedio de notas.
naa : número de alumnos desaprobados.
na18 : número de alumnos mayores de 18 años.
nombre : nombre del alumno
condición : asume valores 1 (aprobados), 2 desaprobados.
Programa
#include<stdio.h>
#include<string.h>
main(void)
{
int i,n1,n2,n3;
float promedio;
int naa,na18;
char nombre[20];
int condicion;
naa=0;
na18=0;Y54E4332EWWWWWW
for(i=1;i<=40;i++)
{printf("ingrese el nombre ");
scanf("%s",nombre);
printf("ingrese el nota1: ");
scanf("%d",&n1);
printf("ingrese el nota2: ");
scanf("%d",&n2);
printf("ingrese el nota3: ");
scanf("%d",&n3);
promedio=(n1+n2+n3)/3;
if(promedio>12)
{condicion=1;
naa=naa+1;
}
else
{ condicion=2; }
if(condicion==1) printf("%s nota1: %d nota2: %d, Nota3: %d, promedio: %lf condicion
:aprobado \n",nombre,n1,n2,n3,promedio);
else printf("%s nota1: %d nota2: %d, Nota3: %d, promedio: %lf condicion
:desaprobado \n",nombre,n1,n2,n3,promedio);
if(promedio>=18) na18=na18+1;
}
printf("hay aprobados: %d y aprobados con mas de 18 %d:\n",naa,na18);
}
Ejercicio 24
Algoritmo
Inicio
Declare i, n, num, suma
Leer n
Suma:0;
Num:2;
Desde i=1 hasta i<=n hacer
Num:num*2+1
Suma:suma+num/(num+1)
Fin Desde
Imprimir suma
Fin
Variables
i : Contador
n : Numero de términos de la serie
num : valor del numerador de la serie
suma : Acumulador de la suma
Programa
#include<stdio.h>
main(void)
{
int i,n;
float num,den,suma;
printf("ingrese la cantidad de términos ");
scanf("%d",&n);
suma=0;
num=2;
for(i=1;i<=n;i++)
{num=num*2+1;
suma=suma+num/(num+1);
}
printf("suma %lf ",suma);
}
for ANIDADO
Ejercicio 25
Algoritmo
Inicio
Declare n, m
Desde n=1hasta n<=3 hacer
Imrpimir "HOLA"
Desde m=1 hasta m<=5 hacer
Imprimir "CHACHAPOYAS"
Fin Desde
Fin Desde
Fin
Variables
n, m : Variables contadores
Programa
#include<stdio.h>
int n,m;
main(void)
{
for(n=1;n<=3;n++)
{ printf(" HOLA \n");
for(m=1;m<=5;m++)
printf("CHACHAPOYAS \n");
}
}