Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2009
    Messaggi
    88

    programma in C che deve calcolare la somma di un intero

    premesso che ho iniziato da poco a programmare questo è il testo del problema
    /*scrivere un programma in C che inserito in input un intero sommare tutte le cifre del numero inserito da tastiera.
    esempio:
    n=1034 ouput=8
    n=56 output=11
    n=123 output=6 */

    questo è il codice che ho scitto io ma mi funziona solo su alcuni input, comunque non mi convince sull'algoritmo che ho adoperato questo è il codice:

    #include<stdio.h>
    int main(){
    int n,p,i,mem,cont_uno,cont_due,cont_tre,z;
    int somma=0;
    scanf("%d",&n); // 1034
    z=n; //1034
    p=n/10; // 103
    mem=p*10; // 103*10=1030
    cont_uno=0;
    for (i=mem;i<n;i++){ // 1030<1034
    cont_uno++;}

    z=z/10; // 1034/10=103
    p=z/10; // 103/10=10
    mem=p*10; //100

    cont_due=0;
    for (i=mem;i<z;i++){ //100<103
    cont_uno++;}

    somma=cont_uno+cont_due;
    //printf("%d",somma);

    z=n;
    z=z/10; //1100/10=110
    p=z/10; //110/10=11
    mem=p*1; //11*1=11
    mem=z/mem;
    cont_tre=0;
    for (i=mem;i<=z/10;i++){ //0<1
    cont_tre++;}

    somma=somma+cont_tre;
    printf("%d",somma);



    return 0;}

  2. #2
    Un po' meno compatto no, eh?
    codice:
    #include <stdio.h>
    
    int main()
    {
        int numero, sommaCifre=0;
        printf("Inserisci il numero: ");
        if(scanf("%d", &numero)!=1)
        {
            fputs("Valore non valido\n",stderr);
            return 1;
        }
        if(numero<0)
            numero=-numero;
        while(numero)
        {
            sommaCifre+=numero%10;
            numero/=10;
        }
        printf("La somma delle cifre e' %d\n",sommaCifre);
        return 0;
    }
    Amaro C++, il gusto pieno dell'undefined behavior.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.