Esercizio C

di il
1 risposte

Esercizio C

Salve,
sono nuovo di questo forum e nuovo nel linguaggio C.

Sto facendo un esercizio che richiede la differenza tra 3 numeri.
il risultato da stampare dovrebbe essere :

Se sono uguali li deve visualizzare tutti. --> e quà ci sono riuscito

Se cè un maggiore visualizza solo il maggiore o i maggiori --> e quà ci sono tiuscito

Trovo difficoltà nella differenza tra i tre.
Se la differenza tra i tre numeri è uguale a 1 me li deve visualizzare entrambi.
Faccio un esempio:

4 5 6 visualizza tutti --> perchè 6-5=1 e 5-4=1

6 5 4 visualizza tutti --> come sopra

6 5 5 visualizza tutti --> come sopra

7 4 6 visualizza solo 7 e 6

2 5 6 visualizza solo 5 e 6

Qualcuno potrebbe aiutarmi?

1 Risposte

  • Re: Esercizio C

    Ci sono riuscito ma vorrei sapere se si potrebbe semplificare in altro modo, questo è quello che sono riuscito a fare :

    #include <stdio.h>
    #include <stdlib.h>
    main()

    {
    int a,b,c,d,e,f,g,h,i;

    printf("inserisci il primo numero ");
    scanf("%d",&a);
    printf("inserisci il secondo numero ");
    scanf("%d",&d);
    printf("inserisci il primo numero ");
    scanf("%d",&b);
    printf("inserisci il secondo numero ");
    scanf("%d",&e);
    printf("inserisci il primo numero ");
    scanf("%d",&c);
    printf("inserisci il secondo numero ");
    scanf("%d",&f);



    g=a+d;
    h=b+e;
    i=c+f;


    if ((g == h)&&(h == i))
    {

    printf("I numeri sono uguali: %d %d %d \n",g,h,i);
    }

    if ((g > h)&&(g > i))
    {
    printf("Il numero maggiore e` : %d \n",g);
    }

    if ((h > g)&&(h > i))
    {
    printf("Il numero maggiore e` : %d \n",h);
    }

    if ((i > h)&&(i > g))
    {
    printf("Il numero maggiore e` : %d \n",i);
    }

    if ((g - h == 1)&&( h - i == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((i - h == 1)&&( h - g == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((h - g == 1)&&( g - i == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((h - i == 1)&&( i - g == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((g - i == 1)&&( i - h == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((i - g == 1)&&( g - h == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((g == h)&&( h - i >= 2))
    {
    printf("Il risultato e`: %d %d \n",g,h);
    }

    if ((i == h)&&(h - g >= 2))
    {
    printf("Il risultato e`: %d %d \n",h,i);
    }

    if ((g - h >= 2)&&(i - h >= 2))
    {
    printf("Il risultato e`: %d %d \n",g,i);
    }

    if ((g == h)&&( h - i == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((i == h)&&(h - g == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }

    if ((g == i)&&(g - h == 1))
    {
    printf("Il risultato e`: %d %d %d \n",g,h,i);
    }
    system("pause");
    }
Devi accedere o registrarti per scrivere nel forum
1 risposte