*/Cálculo de Matrícula
Calcular e imprimir el valor total a pagar por concepto de matrícula de un estudiante.
Para realizar estos, se debe capturar el código de estudiante, que permite definir los
parámetros de liquidación e información adicional. (El código está compuesto por 5
dígitos).
El Primer dígito permite identificar el tipo de carrera que cursa el estudiante y valor
base de matrícula.
El Segundo dígito representa la jornada y permite obtener recargo sobre la
matrícula.
Y los siguientes tres dígitos del consecutivo de la carrera:
-Si el alumno tiene un consecutivo par, tiene un descuento 20%.
- Si el alumno tiene un consecutivo impar tiene un descuento 10%.*/
#include<stdio.h>
main() {
long int matric=0;
long int recargo=0;
long int descuento=0;
long int base=0;
long int n1=0, n2=0,
n3=0;
long int total= 0 ;
printf ("Este
programa calculará el monto por cobrar, en base A LOS DÍGITOS QUE
USTED INTRODUZCA. Preste cuidado al momento de introducirlos\n");
printf("Son en
total cinco dígitos.\n El Primer dígito permite identificar el tipo
de carrera que cursa el estudiante y el valor base de matrícula.\n
El Segundo dígito representa la jornada y permite obtener recargo
sobre la matrícula.\n Los siguientes tres dígitos, determinarán la
cantidad de descuento.\n Si el primer dígito es «1» es un
estudiante de carrera profesional y el valor base por cobrar es de G
300.000.\n Si equivale a «2» estudia uns carrera tecnológica, y el
valor base de la matrícula es de G 150.000 \n Si el número es «3»
estudia una carrera técnica-profesional y el valor base de matrícula
es de 100.000 G.\n Los demás datos están predefinidos a
continuación.\n\n\n");
printf ("Ingrese
el número de matrícula del alumno:\n");
scanf ("%ld",
&matric);
while (matric>32999
|| matric<10000) {
printf ("Debe
escribir una matrícula con 5 dígitos y dentro del rango
preestablecido al inicio:\n");
scanf ("%ld",
&matric);
}
n1= (matric/10000) %
10;
n2 = (matric/1000) %
10;
n3 = matric % 10;
if (n1==1) {
base= 300000;
}
if (n1==2) {
base= 150000;
}
if (n1==3) {
base= 100000;
}
if (n2== 1) {
recargo=
(base*5)/100;
}
if (n2==2) {recargo=
base*10/100;
}
if (n3%2 ==0) {
descuento=
(base*20)/100;
}
if (n3%2 == 1){
descuento= (base*10)/100;
}
total=
base+recargo-descuento;
printf ("La
matrícula %ld da como precio base: %ld G\n de recarga: %ld G\n y
de descuento: %ld G\n", matric, base, recargo, descuento);
printf("El total
por cobrar es: %ld", total);
return 0;
}
Si vas a publicar códigos te recomiendo que uses SyntaxHighlighter para que sea mas legible tu código ;) saludos
ResponderEliminarme da nostalgia ver este tipo de codigos y luego pensar ...uffff ..asi prgramaba antes de conocer los areglos mnultindmesionales y las funciones de codigo y sin contar con los demas comandos ..
ResponderEliminargracias por este toque de nostalgia a este viejo programador ..