Foros del Web » Programación para mayores de 30 ;) » C/C++ »

consulta sobre if

Estas en el tema de consulta sobre if en el foro de C/C++ en Foros del Web. Hola chicos ,hace un ratin hize el siguiente ejercicio,el cual me compila bien,me ejecuta bien pero creo ke me pase con los "if" ,podrias hecharle ...
  #1 (permalink)  
Antiguo 10/03/2010, 14:20
 
Fecha de Ingreso: marzo-2010
Mensajes: 127
Antigüedad: 14 años, 1 mes
Puntos: 2
consulta sobre if

Hola chicos ,hace un ratin hize el siguiente ejercicio,el cual me compila bien,me ejecuta bien pero creo ke me pase con los "if" ,podrias hecharle un vistazo al codigo y decirme alguna manera para que quede mucho mejor please?

El enunciado es el siguiente:
Programa que lee 2 numeros enteros,positivos y distintos y nos dice si el mayor es multiplo del menor o lo que es lo mismo
si el menor es divisor del mayor.

Código C++:
Ver original
  1. #include<stdio.h>
  2.  
  3. int main(){
  4.  
  5. int num1,num2;
  6.  
  7. printf("introduce un numero:\n");
  8. scanf("%i",&num1);
  9.  
  10. printf("introduce un segundo numero:\n");
  11. scanf("%i",&num2);
  12.  
  13. if(num1>num2 && num1>0 && num2>0 && num1!=num2){
  14.  
  15.  
  16.                     printf("el numero mayor es %i\n",num1);
  17.                     if(num1%num2==0)
  18.                     {
  19.                     printf("el numero %i si es multiplo de %i\n",num2,num1);
  20.                     }
  21.                     else{
  22.                     printf("el numero %i no es multiplo de %i\n",num2,num1);
  23.                     }
  24.                     }
  25. if(num2>num1 && num1>0 && num2>0 && num1!=num2){
  26.  
  27.  
  28.              printf("el numero mayor es %i\n",num2);
  29.              if(num2%num1==0)
  30.               {
  31.              printf("el numero %i si es multiplo de %i\n",num2,num1);
  32.               }
  33.               else{
  34.               printf("el numero %i no es multiplo de %i\n",num2,num1);
  35.               }
  36.  
  37. }
  38. if(num1<=0 || num2<=0){
  39. printf("Numeros no aceptados,adios\n");
  40. }
  41. if(num1==num2){
  42.  
  43. printf("los numeros introducidos son iguales");
  44. }
  45. }

Última edición por roser24; 10/03/2010 a las 14:32
  #2 (permalink)  
Antiguo 13/03/2010, 09:11
 
Fecha de Ingreso: octubre-2008
Mensajes: 118
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: consulta sobre if

yo lo aria asi:

Código:
      #include<stdio.h>
      int main(){
      int num1,num2, mayor, menor;
      printf("introduce un numero:\n");
      scanf("%i",&num1);
      printf("introduce un segundo numero:\n");
      scanf("%i",&num2);

      if(num1<=0 || num2<=0){
        printf("Numeros no aceptados,adios\n");
      } else if(num1==num2){
        printf("los numeros introducidos son iguales\n");
      } else {
          if (num1>num2) {
              mayor=num1;
              menor=num2;
          }else {
              mayor=num2;
              menor=num1;
          }
          printf("el numero mayor es %i\n",mayor);
          if(mayor%menor==0) {
            printf("el numero %i si es multiplo de %i\n",menor,mayor);
          } else {
            printf("el numero %i no es multiplo de %i\n",menor,mayor);
          }
      }
}
Utilizando 2 variables auxiliares te aorras unos cuantos if y poniendo las comprobaciones de mayor a 0 y q sean distintos delante te ahorras compararlo dentro del if. Aunque todo esto en un programita tan simple no es q importe muxo xD
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:46.