Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    12

    Conteggio cifre di un numero

    Ragazzi sono nuovo, buonasera a tutti
    scrivo perchè sono veramente disperato...sono al primo anno di ingegneria informatica e mi trovo in difficoltà con gli esercizi di programmazione. oggi come compito per casa avrei un esercizio che richiede il conteggio delle cifre di un numero.
    la programmazione è c++.

    per svolgere l'esercizio ho imposto al programma di dividere il numero inserito dall'utente per 10, finchè il resto della divisione risultasse maggiore o uguale a 10, ma il programma non funziona
    spero che qualcuno possa aiutarmi! grazie in anticipo!

    vi mando il codice che ho scritto:

    #include <iostream>
    #include <math.h>
    using namespace std;

    int main () {
    int a;
    double b = 10,i = 0;

    cout << "Inserisci un numero intero positivo: ";
    cin >> a;

    if (a < 0) {
    cout << "Il numero inserito non e' positivo" << endl;

    }else{

    for (i = 0; a % 1*pow (b,i) <= 9; i++) {

    cout;

    }
    cout << "Il numero inserito ha " << i + 1 << " cifre." << endl;
    }
    return 0;
    }

  2. #2
    Più semplice:
    codice:
    #include <iostream>
    
    using namespace std;
    
    int main()
    {
    	int num = 0;
    	int i = 0;
    
    	cout << "Inserisci un numero intero positivo: ";
    	cin >> num;
    
    	if(num < 0)
    		return -1;
    
    	do
    		i++;
    	while(num /= 10);
    
    	cout << "Il numero ha " << i << " cifre" << endl;
    
    	return 0;
    }
    An infinite number of monkeys typing into GNU emacs would never make a good program.Linus Torvalds

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    12
    grazie mille!!

    posso chiederti solo cosa significa il simbolo "/=" che non ce l'hanno mai fatto vedere a lezione?

    grazie ancora!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    12
    ah ok, ho trovato il significato googleando un po'

    adesso però devo capire bene cos'hai fatto nel ciclo do-while...

    cioè, hai fatto partire nel do un contatore che aggiunge +1 finchè a non diventa uguale ad a/10, cioè finchè 10 non diventa di potenza 0?

    ok, spiegato così non ci capirei niente neanch'io...quello che non capisco è cosa sta eseguendo il programma in questo modo...dopo che operazione non soddisfatta il contatore aggiunge +1?

  5. #5
    Allora, praticamente la variabile i tiene il conto delle cifre, ad ogni ciclo do-while viene incrementata di 1.
    Nella condizione while(num /= 10) num viene diviso per 10, e il risultato è posto in num, dopo la divisione, se num è maggiore di 0, il ciclo continua, altrimenti esce.
    An infinite number of monkeys typing into GNU emacs would never make a good program.Linus Torvalds

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    12
    aaah!! ho capito! non mi sarebbe mai venuto in mente, grazie mille per l'aiuto!!

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