|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
Principiante c++ista
Sono al terzo anno del liceo ed è il primo anno che studio il linguaggio c++ ad informatica, penso che per voi sia molto semplice risolvere un problema del genere:
Inserito un numero N, definire quanto è lunga la sottosequenza non decrescente maggiore. (cioè: N=12145 le sottosequenze sono 12 e 145) io ho scritto questo, mi potete dare una manina? dove sbaglio? #include<iostream> #include<conio.h> using namespace std; int main() {int A,B,N,CONTA,MAX=0; cout<<"inserisci n\n"; cin>>N; do {do {A=N%10; CONTA++; N=N/10; B=N%10;} while (B<A); if (MAX<CONTA) MAX=CONTA; CONTA=0;} while (N>0); cout<<MAX<<endl; getch(); return 0; } lo so che vi sembrerà stupido, però sono agli inizi
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
...up
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Feb 2005
Città: Milano
Messaggi: 35
|
Quando inserisci codice cerca di inserirlo formattato, usando il tag [code], ne guadagna la leggibilità...
es. Codice:
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int A,B,N,CONTA,MAX=0;
cout<<"inserisci n\n";
cin>>N;
do {
do {
A=N%10;
CONTA++;
N=N/10;
B=N%10;
}
while (B<A);
if (MAX<CONTA)
MAX=CONTA;
CONTA=0;
}
while (N>0);
cout<<MAX<<endl;
getch();
return 0;
}
__________________
Res ipsa loquitur |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
OK, grazie FedeX_65246X per il consiglio, cmq, non c'è nessuno che sia in grado di darmi una mano???
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Mar 2000
Città: Bari-Brindisi-Lecce e prov
Messaggi: 424
|
Penso che innanzitutto dovresti inizializzare le variabili al valore nullo, tu le hai solo definite, non e' detto che il compilatore gli assegni valore predefinito nullo.
Io procederei scorrendo le cifre a partire da quella a sinistra, memorizzandole in un vettore diciamo v1. Ad ogni nuova cifra controllo che sia maggiore uguale di quella analizzata precedentemente. Se invece e' minore della precedente inizio la memorizzazione in un nuovo vettore v2, continuando cosi' sinche' nuovamente la cifra e' minore della sua precedente. A questo punto confronto la dimensione dei due vettori, il piu' lungo e' la sotto sequenza che cercavo. Naturalmente se il numero iniziale contiene piu' di due sottosequenze reitero i passi precedenti.
__________________
VoIp Gratis - Adsl senza canone telecom Ho trattato con: adarkar,Bobosassa, matrix866,M@t,k|o, percky,s5otto, Rospaccio, CluRaCaN, Igor,Zizziry, bokkakesballa, Pex,freewilly, Umbyboy,DAVO, nathbigga, fabiuxx ed altri. Diffidate di quinnuxxa |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
Quote:
nel codice che ho scritto io ho notato che il problema sta negl'ultimi controlli, quando rimane una sola cifre. Perciò avevo pensato di inserire un controllo che bloccasse il ciclo quando il numero scendesse al di sotto di 10, però ancora non funziona: non so se è un problema del mio compilatore (uso il dev) ma ogni volta che compilo e lancio il rpogramma mi da come risultato 65! qualcuno sa darmi una mano?
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
Quote:
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jun 2005
Città: Roma
Messaggi: 715
|
Quote:
__________________
Fin quando ci sarà il Colosseo ci sarà Roma, quando cadrà il Colosseo cadrà Roma e quando cadrà Roma, cadrà il mondo |
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Mar 2000
Città: Bari-Brindisi-Lecce e prov
Messaggi: 424
|
Quote:
Codice:
char ch[10]; int i = 1234; itoa(i, ch, 10); (itoa sta per IntegerTOchAr) A questo punto scorri il vettore dal primo all'ultimo elemento. Puoi risparmiarti questa conversione se accetti in ingresso il numero come normale stringa, a te in fin dei conti non interessa il valore numerico dell'input ma la sua composizione.
__________________
VoIp Gratis - Adsl senza canone telecom Ho trattato con: adarkar,Bobosassa, matrix866,M@t,k|o, percky,s5otto, Rospaccio, CluRaCaN, Igor,Zizziry, bokkakesballa, Pex,freewilly, Umbyboy,DAVO, nathbigga, fabiuxx ed altri. Diffidate di quinnuxxa |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:37.



















