int

Anuncio
Ejercicio 2, Tema 5
#include <stdio.h>
void leer_valores(unsigned &,unsigned &,char &);
int calcula_operacion(unsigned, unsigned, char);
int main()
{
int num1,num2;
int resultado;
char car='s', op;
do{
leer_valores(num1,num2,op);
resultado = calcula_operacion(num1,num2,op);
printf("\n%u %u %c",num1,num2,op);
printf("\nEl resultado de la operacion es %d",resultado);
printf("\n¿desea realizar otra operacion (s/n)?:");
scanf(" %c",&car);
}while(car=='s');
return 0;
}
void leer_valores(unsigned &a ,unsigned &b ,char &c)
{
printf("\nIntroduce operando :");
scanf("%u",&a);
printf("\nIntroduce operando :");
scanf("%u",&b);
printf("\nIntroduce operador :");
scanf(" %c",&c);
}
int calcula_operacion(unsigned a ,unsigned b ,char c)
{ int resultado;
switch (c)
{
case '+': resultado=(int)(a+b); break;
case '-': resultado=(int)(a-b); break;
case '*': resultado=(int)(a*b); break;
case '/': resultado=(int)(a/b); break;
}
return resultado;
}
Ejercicio 3, Tema 5.
/*Si la letra siguiente es menor o igual que la anterior
entonces se suman. En otro caso se le resta el valor
anterior y se suma la resta del actual con el anterior*/
#include <stdio.h>
#include <conio.h>
int valor_arabigo(char);
void main()
{ int valor_act,valor_ant=0,suma=0;
char car;
printf("\nIntroduce un numero arabigo correcto ");
printf("y pulsa enter :");
scanf("%c",&car);
while (car!='\n')
{ valor_act=valor_arabigo(car);
if (valor_act>valor_ant)
{
suma -= valor_ant;
suma += valor_act-valor_ant;
}
else
suma += valor_act;
valor_ant = valor_act;
scanf("%c",&car);
}
printf("\nEl equivalente arabigo es %d ",suma);
getch();
return 0;
}
int valor_arabigo(char car)
{ int v;
switch (car)
{
case 'I': v=1; break;
case 'V': v=5; break;
case 'X': v=10; break;
case 'L': v=50; break;
case 'C': v=100; break;
case 'D': v=500; break;
case 'M': v=1000; break;
default : v=0;
}
return v;
}
Descargar