Académique Documents
Professionnel Documents
Culture Documents
1.- El profesor de una materia desea conocer la cantidad de sus alumnos que no tienen
derecho al exámen de nivelación.
Diseñe un pseudocódigo que lea las calificaciones obtenidas en las 5 unidades por
cada uno de los 40 alumnos y escriba la cantidad de ellos que no tienen derecho al exámen
de nivelación.
INICIO
L=5
CALI=0
LEER C
PARA J=1 Y 40
L=L+1
LEER N
N=L*CALI
SI CALI>5 ENTONCES
‘PUEDE PRESENTAR’
SINO
‘NO PUEDE PRESENTAR’
FIN SI
FIN PARA
FIN
2.- Diseñe un diagrama que lea los 2,500,000 votos otorgados a los 3 candidatos a
gobernador e imprima el número del candidato ganador y su cantidad de votos.
INICIO
C=2500.000
LEERV,N
MIENTRAS L<V<>
L=L+1
LEER CA1, CA2, CA3, CG, CAD
SI CA1
MOSTRAR ES EL GANADOR
CA1=CA1+C/N
SINO
SI CA2
MOSTRAR ES EL GANADOR
CA2=CA2+C/N
SINO
SI CA3
MOSTRAR ES EL GANADOR
CA3=CA3+C/N
MOSTRAR CA1, CA2, CA3 C
FIN MIENTRAS
FIN
3.- Suponga que tiene usted una tienda y desea registrar las ventas en una computadora.
Diseñe un pseudocódigo que lea por cada cliente, el monto total de su compra. Al final del
día escriba la cantidad total de las ventas y el número de clientes atendidos.
#include
#include
void main()
{
float buy,suma=0;
int x=0;
cout<<"\n\nDigite el monto total de la compra (negativo si desea terminar)";
while (true)
{
x++;
gotoxy(35,1); cout<<"CLIENTE # " < gotoxy(65,3); cin>>buy;
gotoxy(65,3); cout<<" ";
if (buy<0)
break;
suma=suma+buy;
}
clrscr();
x--;
cout<<"Ganancia: " < cout<<"\nClientes atendidos: " < getch();
}
4.- Suponga que tiene una tienda y desea registrar sus ventas por medio de una
computadora. Diseñe un pseudocódigo que lea por cada cliente:
a).- el monto de la venta,
b).- calcule e imprima el IVA ,
c).-calcule e imprima el total a pagar,
d).- lea la cantidad con que paga el cliente,
e).-calcule e imprime el cambio.
Al final del día deberá imprimir la cantidad de dinero que debe haber en la caja.
Pseudocódigo
Inicio
Var
Encaja, numcliente, venta$, IVA , valorcon pagar, cambio,
Numcliente=1 Prueba de escritorio
Cliente=0
Mientras numcliente ¡= 0 haga
Imprimir ‘monto de la venta’
Leer Venta$
IVA=venta$*0.16
Venta$= venta$ +IVA
Cambio=valorapagar-venta$
Imprimir ‘El IVA es =’IVA
Imprimir ‘El total a pagar es ‘venta$
Imprimir ‘El cambio es’ cambio
Pseudocódigo
Inicio
Var
Encaja, numcliente, venta$, IVA , valorcon pagar, cambio,
Numcliente=1
Cliente=0
Mientras numcliente ¡= 0 haga
Imprimir ‘monto de la venta’
Leer Venta$
Imprimir’ con cuánto va a pagar ‘
Leer valorconpagar
Si valaorconpagar < venta$
No se puede realizar la venta
Si no
IVA=venta$*0.16
Venta$= venta$ +IVA
Cambio=valorapagar-venta$
Imprimir ‘El IVA es =’IVA
Imprimir ‘El total a pagar es ‘venta$
Imprimir ‘El cambio es’ cambio
6.- Se tiene un conjunto de 1,000 tarjetas cada una contiene la información del censo para
una persona:
1.- Número de censo,
2.- Sexo
3.- Edad
4.- Estado civil (a.- soltero, b. Casado, c. Viudo, d. Divorciado )
Diseñe un pseudocódigo estructurado que lea todos estos datos, e imprima el número de
censo de todas las jóvenes solteras que estén entre 16 y 21 años.
Pseudocódigo
Inicio
Censo, sexo, edad, estadoc, cantimu
Mientras censo > 1000 Haga
Censo=censo+1
Imprimir ‘sexo de la persona par mujer m y para hombre h ‘
Leer sexo
Imprimir ‘edad de la persona’
Leer edad
Imprimir ‘Estado civil a.- soltero, b. Casado, c. Viudo, d. Divorciado’
Leer estadoc
Si Sexo= m entonces
Si Estadoc=a entonces
Si Edad<21 entonces
Si Edad <= 16 entonces
Cantimu=cantimu+1
Imprimir La cantidad de mujeres censadas solteras entre los 16 y 21años son de, cantimu
Sino
Sino
Sino
Sino
Fin mientras
7.- Diseñe un pseudocódigo que lea el valor de un ángulo expresado en radianes y calcule e
imprima el valor del seno de dicho ángulo. Se leerá también el número de términos de la
serie.
SEN(X) = X - ( X 3 / 3 ! ) + ( X 5 / 5 ! ) - (X7/ 7!) + .....
INICIO
1. Leer Angulo
2. Y= (pi* Angulo)/180
3. Leer N
4. Para n=1 hasta i= N hacer
Z= Z+ pow((-1), n+1) * pow((y), 2*n-1))
H= H + 2*n-1
5. Para j= 1 hasta j= H hacer
F= F*j
Fin _para
P= P + Z/F
Fin _para
6. Escribir “ El valor del seno es” p
7. FIN
8.-Un jeep puede viajar 500 km con un tanque lleno de gasolína. Desde una posición
inicial, conteniendo ‘n’ tanques de gasolína el mismo jeep puede viajar:
L = 500 ( 1 + 1/3 + 1/5 + ...+ 1 / (2n -1) ) km
Estableciendo economía de combustible en una ruta . Diseñe un pseudocódigo
que calcule el valor de ‘L’ dado ‘ n ‘ .
Pseudocódigo
Inicio
Variables
N,L
Imprimir ‘Digite el número de tanques de gasolina ‘
L = 500 (1 + 1/3 + 1/5 + 1 / (2n -1) )
Imprimir ‘Los km que recorrerá con los tanques de gasolina disponibles es ‘, L
Fin
9.- Se ofrece un trabajo que pague un centavo en la primera semana, pero dobla su salario
cada semana, es decir , $.01 la primera semana; $.02 la segunda semana; $0.4 la tercera
semana; ... etc. Hasta $(2n-1)/100 la n- ésima . Diseñar el pseudocódigo que determine ( y
escriba ) el salario por cada semana y el salario pagado hasta la fecha por espacio de 50
semanas.
Pseudocódigo
Var
Total, n, salsema
Mientras n <50 haga
Salsema= (2n-1)/100
Imprimir ‘El salario de la semana es’salsema
Total=total + salsema
N=n+1
Fin mientras
‘El total de las 50 semanas es’ total
Fin
Pseudocódigo
Variables
Ht, sh, ttrab, sueldo, totalap, Totaltra
Si Mientras n<102 haga
Imprimir ‘digite horas trabajadas
Leer Ht
Imprimir ‘digite el sueldo de la hora’
Sueldo=sh*ht
Si Sueldo<100000 entonces
Totalpa = sueldo
Sino
Totalpa=sueldo+ (sueldo*0.10)
Totaltra=totaltra+totalpa
N=n+1
Fin mientras
Imprimir Totaltr
Fin
#include<stdio.h>
int main(void)
{
printf("Ingrese el valor a transformar:\n");
int n;
int conv; int j=0; int k;
int opc;
int n_tem;
int n_temp=0;
int n_temp1=0;
scanf("%d",&n);
printf("Para convertirlo al sistema binario Presione 1:\n"); printf("Para convertirlo al
sistema octal Presione 2:\n"); printf("Para convertirlo al sistema hexadecimal Presione
3:\n"); scanf("%d",&opc);
switch (opc)
{
case 1:printf("%d",n);printf(" en el sistema binario es :\t");
for(conv=1;conv<=n;conv*=2)
j=conv;
for(j=conv;j>=1;j=(conv/=2))
{
for(j=conv;j>=1;j=(conv/=2))
{
if(n_tem>=j){
n_temp1=k/j;
printf("%d",n_temp1);
}}
}
Break;
case 3 :printf("\n");printf("%d",n);
printf(" en el sistema hexadecimal es :\t"); for(conv=1;conv<=n;conv*=16)
j=conv;
for(j=conv;j>=1;j=(conv/=16))
{
for(j=conv;j>=1;j=(conv/=16))
{
_temp=n_tem%j;
if(n_tem>=j)
{
n_temp1=k/j;
if(n_temp1==10)
{ n_temp1='A'; printf("%c",n_temp1);
}
if(n_temp1==11)
{ n_temp1='B'; printf("%c",n_temp1);
}
if(n_temp1==12)
{
n_temp1='C';
printf("%c",n_temp1);
}
if(n_temp1==13)
{ n_temp1='D'; printf("%c",n_temp1);
}
if(n_temp1==14)
{ n_temp1='E'; printf("%c",n_temp1);
}
if(n_temp1==15)
{ n_temp1='F'; printf("%c",n_temp1);
}
else if(n_temp1>=0 && n_temp1<=9)
printf("%d",n_temp1);
}
}
printf("\n");
}
}
break;
}
return 0;
}
12.- Un objeto es dejado caer a una altura de 100 mts. Diseñe un pseudocódigo que
imprima cada décima de segundo la distancia entre el objeto y el suelo y al final imprima
el tiempo necesario en décimas de segundo para que el objeto toque el suelo.
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
main()
{
printf("\nPrograma para analizar la caida de un cuerpo a 100 metros\n ");
float g,t,d,tf,h,a;
h=100;
g=9.8;
t= sqrt((2*h)/g);
getch();
system("cls");
for(a=0.1;a<=t;a=a+0.1)
{
h=0.5*g*pow(a,2);
d=100-h;
printf("\nEl tiempo es: %.2f\n\t",a);
printf("\nLa distancia suelo objeto es: %.2f\n\t",d);
}
tf= t/0.1;
printf("\nEl timepo necesario es : %.2f ds\n\t",tf);
getch();
return 0;
13.- La Cía. Automovilística Mexicana, S.A. de C.V premia anualmente a sus mejores
vendedores de acuerdo a la siguiente tabla:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
main ()
{
int n,i;
float v,com;
n=100; getch();
system("cls");
for (i=1;i<=n;i=i+1)
{
printf("Ingrese el valor de la venta del vendedor %d\n",i);
scanf("%f",&v);
if (v<=1000000 or v<3000000)
{
com=v*0.03;
}else{
if (v<=3000000 or v<5000000)
{
com =v*0.04;
}else{
if (v<=5000000 or v<7000000)
{
com=v*0.05;
}else{
if (v<=7000000 or v<=10000000)
{
com=v*0.06;
}
}
}
}
printf("La comisión por ventas del vendedor %d es: %.2f",i,com);
getch ();
system( "cls");
getch ();
return 0;
}
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
main ()
{
system("cls");
int s, dd, mm, aa;
printf ("\t ESTE PROGRAMA IMPRIME EN NUMEROS LA FECHA
INGRESADA EN NUMERO DE ACUERDO \nA LA SIGUINETE TABLA
PARA LOS DIAS Y MESES\n");
printf("\n DIAS DE LA SEMANA \n\n");
printf ("\n 1 = Lunes");
printf ("\n 2 = Martes");
printf ("\n 3 =
Miércoles"); printf ("\n
4 = Jueves"); printf ("\n
5 = Viernes"); printf
("\n 6 = Sábado"); printf
("\n 7 = Domingo");
printf ("\n MESES DEL ANIO \n");
printf ("\n 1 =
Enero"); printf ("\n 2
= Febrero"); printf
("\n 3 = Marzo");
printf ("\n 4 = Abril");
printf ("\n 5 =
Mayo"); printf ("\n 6
= Junio"); printf ("\n
7 = Julio"); printf ("\n
8 = Agosto");
printf ("\n 9 =
Septimbre"); printf ("\n 10
= Octubre"); printf ("\n 11
= Noviembre"); printf ("\n
12 = Diciembre");
printf ("\n Ingrese la fecha que desea escribir en palabras en el Orden S/DD/MM/AA
\n");
printf ("\n Ingrese el dia\t");
scanf ("%d", &s);
printf ("\n Ingrese el dia del mes del 1 al 31 recuerde que febrero tiene 28 dias\t");
scanf ("%d", &dd);
printf ("\n Ingrese el mes en numeros\t");
scanf ("%d",&mm);
printf ("\n Ingrese el año desde 1900 hasta 2020 \t");
scanf ("%d", &aa);
switch (s)
{
case 1: printf ("Lunes"); break; case 2:
printf ("Martes"); break; case 3: printf
("Miercoles"); break; case 4: printf
("Jueves"); break; case 5: printf
("Viernes"); break; case 6: printf
("Sabado"); break; case 7: printf
("Domingo"); break;
}
switch (dd)
{
case 1:printf ("Uno"); break; case 2:printf ("Dos"); break case 3:printf
("Tres"); break; case 4:printf ("Cuatro"); break; case 5:printf ("Cinco");
break; case 6:printf ("Seis"); break; case 7:printf ("Siete"); break; case
8:printf ("Ocho"); break; case 9:printf ("Nueve"); break; case 10:printf
("Diez"); break; case 11:printf ("Once"); break; case 12:printf ("Doce");
break; case 13:printf ("Trece"); break;
case 14:printf ("Catorce"); break; case 15:printf ("Quice"); break; case
16:printf ("Dieciseis"); break;
case 17:printf ("Diecisiete"); break; case 18:printf ("Dieciocho"); break; case
19:printf ("Diecinueve"); break; case 20:printf ("Veinte"); break;
case 21:printf ("Veinte y uno"); break; case 22:printf ("Veinte
y dos"); break; case 23:printf ("Veinte y tres");break; case
24:printf ("Veinte y cuatro"); break; case 25:printf ("Veinte y
cinco"); break; case 26:printf ("Veinte y seis"); break; case
27:printf ("Veinte y siete"); break; case 28:printf ("Veinte y
ocho"); break;
case 29:printf ("Veinte y nueve"); break;
case 30:printf ("Treinta"); break;
case 31:printf ("Treinta y uno"); break;
switch (mm)
{
case 1:printf ("Enero"); break;
case 2:;
if (dd<=28)
{
printf ("Febrero");
}else{
printf ("\n Este mes tiene 28 dias ingres otra vez la fecha");
}break;
case 3:printf ("Marzo"); break; case 4:printf
("Abril"); break; case 5:printf ("Mayo"); break;
case 6:printf ("Junio"); break; case 7:printf
("Julio"); break; case 8:printf ("Agosto"); break;
case 9:printf ("Septiembre"); break; case 10:printf
("Octubre"); break; case 11:printf ("Noviembre");
break; case 12:printf ("Diciembre"); break;
}
switch (aa)
{
case 1990:printf ("Noventa"); break;
case 1991:printf ("Noventa y Uno"); break; case 1992:printf ("Noventa y Dos"); break;
case 1993:printf ("Noventa y Tres");break; case 1994:printf ("Noventa y Cuatro");break;
case 1995:printf ("Noventa y Cinco");break; case 1996:printf ("Noventa y Seis");break;
case 1998: printf ("Noventa y Siete");break; case 1997:printf ("Noventa y Ocho");break;
case 1999:printf ("Noventa y Nueve");break; case 2000:printf ("Cero-Cero");break;
case 2001:printf ("Cero-Uno");break; case 2002:printf ("Cero-Dos");break; case
2003:printf ("Cero-Tres");break; case 2004:printf ("Cero-Cuatro");break; case
2005:printf ("Cero-Cinco");break; case 2006:printf ("Cero-Seis");break; case 2007:printf
("Cero-Siete");break; case 2008:printf ("Cero-Ocho");break; case 2009:printf ("Cero-
Nueve");break;
case 2010:printf ("Diez");break; case 2011:printf ("Once");break; case 2012:printf
("Doce");break; case 2013:printf ("Trece");break; case 2014:printf
("Catorce");break; case 2015:printf ("Quince");break; case 2016:printf
("Dieciseis");break;
case 2017:printf ("Diecisiete");break; case 2018:printf ("Dieciocho");break; case
2019:printf ("Diecinueve");break; case 2020:printf ("Veinte");break;
}
getch ();
return 0;
}
15.- Un grupo de 100 estudiantes presentan un examen de Física. Diseñe un diagrama que
lea por cada estudiante la calificación obtenida y calcule e imprima: A.- La cantidad de
estudiantes que obtuvieron una calificación menor a 50.
B.- La cantidad de estudiantes que obtuvieron una calificación de 50 o más pero menor que
80.
C.- La cantidad de estudiantes que obtuvieron una calificación de 70 o más pero menor que
80.
D. La cantidad de estudiantes que obtuvieron una calificación de 80 o más.
16.- Un avión que viaja 800 Km/hr. Dispara un proyectil auto impulsado, en el momento
0 2
del disparo, el avión hace un giro de 90 y acelera a 20 mtrs/seg . El proyectil sigue su
2
curso, acelerando a 10 mtrs./seg .
Diseñe un pseudocódigo que escriba cada segundo, la distancia que separa al avión del
proyectil, hasta que estén a 10,000 mtrs. o más.
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include <math.h>
main ()
{
int t,a;
float via, vip, aca, acp, da, dp, dap;
via=vip=222.22;
aca=20;
acp=10;
t=21;
for(a=1;a<=t;a=a+1)
{
da=(via*t)+(0.5*aca*pow(a,2));
dp=(vip*t)+(0.5*acp*pow(a,2));
dap=sqrt(pow(da,2)+pow(dp,2));
if (dap<=10625)
{
printf("\n La distancia entre el avion y el proyectil en el
17.- Una pizzería, vende sus pizzas entiempo
tres tamaños:
de %d s es:%.2f \n",a,dap);
}
}
return 0;
}
Pequeña (10 pulg. De diámetro); mediana (12 pulg. De diámetro); y grandes (16 pulg. De
diámetro); Una pizza puede ser sencilla (con sólo salsa y carne), o con ingredientes extras,
tales como pepinillos, champiñones o cebollas
Los propietarios desean desarrollar un programa que calcule el precio de venta de una pizza,
dándole el tamaño
y el número de ingredientes extras. El precio de venta será 1.5 veces el costo total, que viene
determinado por
el área de la pizza, más el número de ingredientes.
En particular el costo total se calcula sumando:
- un costo fijo de preparación
- un costo base variable que es proporcional al tamaño de la pizza
- un costo adicional por cada ingrediente extra. Por simplicidad se supone que cada
ingrediente extra tiene el mismo costo por unidad de área.
18.- Diseñar un pseudocódigo que calcule el promedio ponderado para alumno de la UTN.
El cálculo se hace de la siguiente forma:
- Se multiplica cada calificación por los créditos de cada materia
- El resultado anterior se suma con los resultados de todas las materias, por separado se
suman los créditos de cada materia y finalmente se divide la suma de todas las materias por
sus respectivos créditos, entre la suma de todos los créditos.
19.- Calcule la suma de los términos de la serie FIBONACCI cuyos valores se encuentran entre
100 y 10,000.
20.- Calcule exactamente el número de días vividos por una persona hasta la fecha.
Contemplar los años bisiestos.
PROBLEMAS PROPUESTOS
MATRICES
BIDIMENSIONALES
Repetir
Escribir "INGRESE CANTIDAD DE FILAS Y COLUMNAS DE LA
MATRIZ";
Escribir "NO. DE FILAS:"
Leer A
Escribir "NO. DE COLUMNAS:"
Leer B
Escribir "INGRESE DATOS DE LA 1A MATRIZ"
Para i<-1 Hasta A Con Paso 1 Hacer
Para j<-1 Hasta B Con Paso 1 Hacer
Escribir "INGRESE DATO DE LA POSICION ",I,",",J
Leer M[I,J]
SUMA<-SUMA+M[I,J]
FinPara
FinPara
Escribir ""
Para i<-1 Hasta A Con Paso 1 Hacer
FinPara
Escribir ""
Para i<-1 Hasta A Con Paso 1 Hacer
Escribir ""
//Imprimir matriz//
Para J<-1 Hasta A Con Paso 1 Hacer
Escribir ""
//Imprimir matriz//
Para J<-1 Hasta A Con Paso 1 Hacer
Esperar Tecla
Borrar Pantalla
Escribir "USAR NUEVAMENTE"
Leer OPC
Hasta Que OPC="NO" O OPC="no"
FinProceso
7) Hacer un algoritmo que llene una matriz de 6 * 8 y que almacene toda la matriz en
un vector.
Imprimir el vector
resultante. Solución:
Proceso MATRIZ_DESPROPORCIONAL
Dimension M[50,50]
Dimension V[50]
H<-1
Repetir
//Desarrollo de la matriz//
Escribir "INGRESE CANTIDAD DE FILAS Y COLUMNAS DE LA
MATRIZ"; Escribir "NO. DE FILAS:"
Leer A
Escribir "NO. DE COLUMNAS:"
Leer B
Escribir "INGRESE DATOS DE LA MATRIZ"
//Llenar la matriz//
Escribir ""
Para I<-1 Hasta A Con Paso 1 Hacer
Para J<-1 Hasta B Con Paso 1 Hacer
Escribir "INGRESE DATO DE LA POSICION ",I,",",J
Leer M[I,J]
V[H]<-M[I,J]
H<-H+1
FinPara
FinPara
//Imprimir matriz//
Para J<-1 Hasta A Con Paso 1 Hacer
Escribir ""
///Imprimir matriz//
Para J<-1 Hasta A Con Paso 1 Hacer
Proceso ARTICULOS_DEPORTIVOS
DIMENSION MATRIZ[50,20]
Repetir
/// REGISTRADOR DE LAS COMPRAS
REPETIR
ESCRIBIR "INGRESE EL COSTO DEL ARTICULO, LA TIENDA QUE SE TRATA (1-50) Y
EL
DEPORTE DEL ARTICULO (1-20), RESPECTIVAMENTE"
LEER C,T,D
MATRIZ[T,D]<-MATRIZ[T,D]+C
ESCRIBIR "DESEA AGREGAR OTRA COMPRA O SALIR"
Escribir "1.-COMPRA"
Escribir "2.-SALIR"
LEER W
HASTA QUE W=2
ESCRIBIR "PRESIONE TECLA PARA CONTINUAR "
Esperar Tecla
Borrar Pantalla
/// SUMADOR DE LAS COMPRAS DE CADA TIENDA
PARA I<-1 HASTA 50 HACER
SUMATIENDA<-0
PARA J<-1 HASTA 20 HACER
SUMATIENDA<-SUMATIENDA+MATRIZ[I,J]
FINPARA
ESCRIBIR "LA TIENDA ",I," TUVO INGRESOS DE ",SUMATIENDA
FINPARA
ESCRIBIR " "
///SUMADOR DE LAS COMPRAS DE CADA DEPORTE Y EL TOTAL
TOTALDEPORTE<-0
PARA I<-1 HASTA 20 HACER
SUMADEP<-0
PARA J<-1 HASTA 50 HACER
SUMADEP<-SUMADEP+MATRIZ[J,I]
FINPARA
TOTALDEPORTE<-TOTALDEPORTE+SUMADEP
ESCRIBIR "EL DEPORTE ",I," TUVO INGRESOS DE ",SUMADEP
FINPARA
Escribir ""
ESCRIBIR "EL TOTAL RECAUDADO FUE DE ",TOTALDEPORTE
ESCRIBIR "PRESIONE TECLA PARA CONTINUAR "
Esperar Tecla
Borrar Pantalla
Hasta Que OPC="NO" O OPC="no"
FinProceso
12) El departamento de policía de la ciudad de Tuxtepec ha acumulado información referente a las
infracciones de los límites de velocidad durante un determinado periodo de tiempo. El departamento ha
dividido la ciudad en cuatro cuadrantes y desea realizar una estadístca de las infracciones a los límites de
velocidad en cada uno de ellos. Para cada infracción se ha preparado una tarjeta que contiene la siguiente
información:
- número de registro del vehículo;
- cuadrante en el que se produjo la infracción
- límite de velocidad en milla por hora
Diseñe un diagrama para producir 2 informes; el 1o. Que contiene una lista de la multa de velocidad
recolectada, donde la multa se calcula como la suma del costo de la corte ($20,000) mas $ 1,250 por cada
mph que exceda la velocidad limite. Prepare una tabla con los siguientes resultados:
INFRACCIONES A LOS LIMITES DE VELOCIDAD
Registro del Velocidad Velocidad Multa
vehículo registrada (MPH) limite
Este informe debe ser seguido de un segundo en el cual se proporcione un análisis de las infracciones por
cuadrante. Para cada uno de los 4 cuadrantes mencionados,debe darse el número de infracciones y la
multa promedio.
Solución:
Proceso DEPARTAMENTO_POLICIA_MEXICO DIMENSION
MULTA[CARROS] DIMENSION
REGISTRO[CARROS] DIMENSION
CUADRANTE[CARROS] DIMENSION
EXCESO[CARROS] DIMENSION
VELOCIDAD[CARROS] DIMENSION
SUMACUADRANTE[4] DIMENSION
C[4,CARROS] DIMENSION
PROMMULTA[4] Repetir
ESCRIBIR "INGRESE EL LIMITE DE VELOCIDAD QUE MANEJAN LOS CUADRANTES"
LEER V
I<-1
ESCRIBIR "INGRESE LA CANTIDAD DE CARROS QUE TUVIERON INFRACCIONES"
LEER CARROS
ESCRIBIR " "
/// REGISTRO DE DATOS
PARA I<-1 HASTA CARROS HACER
ESCRIBIR "INGRESE EL CUADRANTE(1-4), EL NUMERO DE REGISTRO DEL VEHICULO Y VELOCIDAD REGISTRADA,
RESPECTIVAMENTE" LEER CUADRANTE[I],REGISTRO[I], VELOCIDAD[I]
EXCESO[I]<-VELOCIDAD[I]-V
MULTA[I]<-20000+EXCESO[I]*1250
SEGUN CUADRANTE[I] HACER
1:
C[1,I]<-MULTA[I]
2:
C[2,I]<-MULTA[I]
3:
C[3,I]<-MULTA[I]
4:
C[4,I]<-MULTA[I]
FINSEGUN
ESCRIBIR " "
FINPARA
/// INFORME 1
ESCRIBIR "INFORME 1"
PARA I<-1 HASTA CARROS HACER
ESCRIBIR "EL CARRO DE REGISTRO ",REGISTRO[I]," FUE DETENIDO POR EL CUADRANTE ",CUADRANTE[I]," EXCEDIO LA VELOCIDAD EN ",EXCES O[I],"MPH Y TUVO UNA MULTA DE
",MULTA[I] FINPARA
ESCRIBIR " "
/// INFORME 2
ESCRIBIR "INFORME 2"
///CONTEO DE LOS CARROS DE CADA CUADRANTE
PARA J<-1 HASTA CARROS
SI CUADRANTE[J]=1 ENTONCES
SUMACUADRANTE[1]<-SUMACUADRANTE[1]+1
FINSI
SI CUADRANTE[J]=2 ENTONCES
SUMACUADRANTE[2]<-
SUMACUADRANTE[2]+1
FINSI
SI CUADRANTE[J]=3 ENTONCES
SUMACUADRANTE[3]<-
SUMACUADRANTE[3]+1
FINSI
SI CUADRANTE[J]=4 ENTONCES
FINPARA SUMACUADRANTE[4]<-
///SUMA DE LAS MULTAS DE CADA
CUADRANTE PARA I<-1 HASTA 4 HACER
SUMAMULTA<-0
PARA J<-1 HASTA CARROS HACER
SUMAMULTA<-
SUMAMULTA+C[I,J] FINPARA
SI SUMACUADRANTE[I]=0 ENTONCES
SUMAMULTA<-0
SUMACUADRANTE[I]=1
FINSI
PROMMULTA[I]<-SUMAMULTA/SUMACUADRANTE[I]
FINPARA
PARA I<-1 HASTA 4 HACER
ESCRIBIR "EL CUADRANTE ",I," REGISTRO ",SUMACUADRANTE[I]," CARROS Y CON UN PROMEDIO DE MULTAS DE
FINPARA ",PROMMULTA[I]
ESCRIBIR "PRESIONE TECLA PARA CONTINUAR
" Esperar Tecla
Borrar Pantalla
Escribir "USAR NUEVAMENTE"
Leer OPC
Hasta Que OPC="NO" O OPC="no"
FinProceso
13) Se tiene almacenada la matriz M (50,5) la cual contiene la información sobre las
calificaciones
de la materia de LENGUAJES ALGORITMICOS. Diseñe un pseudocódigo que imprima:
a).- Cantdad de alumnos que aprobaron la materia.
B).- Cantdad de alumnos que tenen derecho a nivelación.
C).- El (o los) numero (s) de control de lo(s) alumno(s) que haya (n) obtenido la máxima
califcación fnal.
PROCESO LENGUAGE_DE_ALGORITMOS
DIMENSION M[50,5]
Repetir
MAY<-99999999999999999
PARA I<-1 HASTA 50 HACER
PARA J<-1 HASTA 5 HACER
APROBO<-0
NIVELACION<-0;
ESCRIBIR "INGRESE LA NOTA (0-5) DE LA CASILLA FILA ",I,"
COLUMNA ",J
LEER M[I,J]
SI M[I,J]>=3 ENTONCES
APROBO<-1
FINSI
SI M[I,J]<3 ENTONCES
NIVELACION<-1
FINSI
SI M[I,J]>MAX ENTONCES
MAY<-M[I,J]
FINSI
SUMAAPROBO<-SUMAAPROBO+APROBO
SUMANIVELACION<-SUMANIVELACION+NIVELACION
Escribir ""
FINPARA
FINPARA
SUMAMAXIMA<-0
PARA I<-1 HASTA 50 HACER
PARA J<-1 HASTA 5 HACER
MAXIMA<-0
SI M[I,J]=MAX ENTONCES
MAXIMA<-1
FINSI
SUMAMAXIMA<-SUMAMAXIMA+MAXIMA
FINPARA
FINPARA
ESCRIBIR "APROBARON ",SUMAAPROBO, "ESTUDIANTES"
ESCRIBIR "VAN A TENER QUE NIVELAR LA MATERIA ",NIVELACION," ESTUDIANTES"
ESCRIBIR "LA MAXIMA NOTA FUE ",MAX," Y LA OBTUVIERON ",SUMAMAXIMA
ESCRIBIR "PRESIONE TECLA PARA CONTINUAR "
Esperar Tecla
Borrar Pantalla
Escribir "USAR NUEVAMENTE"
Leer OPC
Hasta Que OPC="NO" O OPC="no"
FINPROCESO