Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Divisioni successive in c

    Sono sicuro che mi sfugge qualcosa di molto semplilce ma mi sono incartato .
    Vorrei scrivere un programma che esegua le divisioni successive in colonna questo è il codice .
    Domanda : perchè non comincia dalla prima divisione ?

    codice:
    #include<stdio.h>
    #include<stdlib.h>
    #include<math.h>
    main (void){
        int div[20];
        int ris,i;
        int a;
        int b;
    
    
        printf("\nInserisci il dividendo :");
        scanf("%d",&a);
        printf("\nInserisci il divisore :");
        scanf("%d",&b);
    
    
        printf("\n--------------------------------------------\n");
    printf("\n\tIl risultato della divisione successiva con resto e\'\n");
    printf("\n--------------------------------------------\n");
    ris=a/b;
    int k=0;
    
    
    while (ris>=b){
       div[k]=ris/=b;
       k++;
    }
    for(i=0;i<=k-1;i++)
        printf("\n\t%d",div[i]);
     printf("\n--------------------------------------------\n");
    return(EXIT_SUCCESS);
    }

    se eseguo il codice mettendo 9 come dividendo e 2 come divisore comincia dal secondo dato , quindi l'output è
    2
    1
    0
    Non
    4
    2
    1
    0
    PERCHE'?
    Ultima modifica di LeleFT; 03-02-2020 a 13:58 Motivo: Aggiunti i tag CODE

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,307
    Perché la prima divisione te la perdi fuori dal ciclo

    Meglio

    codice:
        printf("\n--------------------------------------------\n");
        printf("\n\tIl risultato della divisione successiva con resto e\'\n");
        printf("\n--------------------------------------------\n");
    
        int ris = a;
        int k = 0;
        while(ris)
            div[k++] = (ris /= b);
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Elementare signor Watson . Grazie mille sei stato molto gentile e chiaro

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,139
    @giampi197010: per il futuro, quandi posti del codice, inseriscilo all'interno degli appositi tag CODE (pulsantino '#' che trovi nel form dove scrivi i post), così da mantenere formattazione ed indentazione.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.