Download Certamen1-2SEM-2007

Document related concepts

Bucle infinito wikipedia , lookup

Printf wikipedia , lookup

Boo (lenguaje de programación) wikipedia , lookup

Transcript
Certamen 1 – Programación en C
II semestre 2007
1.- Realice un programa que calcule la siguiente expresión:
En donde el límite de la sumatoria debe ser ingresado por el usuario. Usted debe validar
que los datos ingresados sean correctos. (40 ptos).
Hint: -1n = 1 si n es par y -1n = -1 si n es impar.
2.- Realice el ruteo del siguiente programa, considerando como datos de entradas los
siguientes valores, en el mismo orden dado: 12343, -5, 18.
(30 ptos.)
int main(){
int i, j, total, a, b, r, n, flag;
total= 0;
for (j=2;j>=1;j--){
do{
do{
printf("Ingrese un número");
scanf("%d",&n);
}while(n<=0);
a= n % 10;
b= n / 10 % 10;
r= a + b;
flag= 1;
i= 2;
while ((i<= r / 2) && flag)
if (r % i == 0) flag= 0
else i++;
if (flag)
n= n / 10;
}while (( n > 9) && flag);
if (flag) printf("El número es válido");
else printf ("El número no es válido");
total += n;
}
switch (total % 2){
case 0: printf ("La suma de los números ingresados es par"); break;
case 1: printf ("La suma de los números ingresados es impar"); break;
}
}
3.- Dado el siguiente código de un programa, escriba un programa equivalente
reemplazando las estructuras For por While (1), la estructura IF por SWITCH-CASE
(2), la estructura While por Do While (3) y la estructura IF por SWITCH-CASE (4).
(30 Ptos.)
int main(){
int n, i, c, p, es;
for( i= 10 ; i>= 1;i--){
do{
printf("Ingrese un número:");
scanf("%d",&n);
}while(n<=1);
if (n==2)
printf("El número cumple");
else{
c= 2;
es= 1;
while ((n / 2) >= c && es){
p= n;
while (p > 0)
p-=c;
if (p == 0)
es= 0;
c++;
}
}
if (es)
printf("El número cumple");
else
printf("El numero no cumple");
}
}
/****1****/
/****2****/
/****3****/
/****4****/