Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso
Basato su piattaforma Qualcomm Snapdragon X Plus a 8 core, il nuovo Microsoft Surface Pro 12 è un notebook 2 in 1 molto compatto che punta sulla facilità di trasporto, sulla flessibilità d'uso nelle differenti configurazioni, sul funzionamento senza ventola e sull'ampia autonomia lontano dalla presa di corrente
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 09-02-2006, 14:21   #1
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
[c++]1° traccia esercizi

ciao. devo portare 3 esercizi in c++ sviluppati in dev c++. la prima traccia è la seguente:

Codice:
Sviluppare un programma in C++ che legge e mnemorizza una stringa di caratteri
(massimo 60) contente una serie di parole separate da spazio e stampa a video
solo le parole più lunghe di 7 caratteri.
Il programma deve essere strutturato cme segue:
1)Il main legge e memorizza la stringa,utilizza una funzione estraiParola e stampa
le parole più lunghe di 7 caratteri.
2)La funzione estraiParola data la stringa e l'indice da cui iniziare la scansione della stringa restituisce la parola identificata a partire dalla posizione i e la sua lunghezza
questa è la traccia. io non ho bisogno di essere fatto tutto il programma, volevo solo una spinta iniziale da cui poi posso continuare e terminare da solo.
ki me la da?
grazie a tutti
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 14:32   #2
blacko
Member
 
Iscritto dal: Oct 2005
Messaggi: 65
... se ho capito il problema...

con un ciclo while riesci a fare tutto... while carattere in elaborazione <> blank

check su un contatore e via che andiamo!
__________________
SAP
blacko è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 14:34   #3
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
diciamo il mio problema principale è la funzione estraiParola
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 14:48   #4
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
con char stringa[60] e cin >> stringa memorizzo la stringa nell'array.
con il ciclo while ripeto la funzione più volte passando di indice in indice.
ma la funzione? come fa a controllare una parola? lo fa quando trova una spazio vuoto in una cella?
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 15:10   #5
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
ho cercato di fare un mezzo algoritmo
ke ne pensate?

Codice:
char estraiParola(char stringa, char & i) {
 
   while(int i=0) {
       int contatore_spazio = 0;
       if(stringa[i]!=" ") {
       i++; 
       else { 
           if(((i - 1) - (contatore_spazio + 1) >= 7) {
               cout << stringa[i - 7] stringa[i - 6] stringa[i - 5] stringa[i - 4]
               stringa[i - 3] stringa[i - 2] stringa[i - 1] << endl; }
               contatore_spazio = i;
               i++
   }    
}
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 16:35   #6
blacko
Member
 
Iscritto dal: Oct 2005
Messaggi: 65
se no ancora + semplice

for di 60

if stringa(i) <> " "
contatore stringa ++
else
if contatore stringa <= 7
write
else
continua loop
__________________
SAP
blacko è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 18:43   #7
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
eccomi qua.
sono riuscito a risolvere tutti i problemi di compilazione..ma il programma non funziona regolarmente..scrive simboli strani

il codice intero è questo
Codice:
#include <iostream>
#include <stdlib.h>

using namespace std;
char estraiParola(char stringa);

char estraiParola(char stringa) {
 
   while(int i=0) {
       char stringa[60];
       int contatore_spazio = 0;
       if(stringa[i]!=' ') {
       i++; 
        } else { 
           if(((i - 1) - (contatore_spazio + 1)) >= 7) {
               cout << stringa[i - 7] << stringa[i - 6] << stringa[i - 5] << stringa[i - 4]
               << stringa[i - 3] << stringa[i - 2] << stringa[i - 1] << endl; }
               contatore_spazio = i;
               i++;
   }    
}   
}       
int main(int argc, char *argv[])
{
    int esci = 1;
    int i = 0;
    char stringa[60];

        cout << "Inserisci una stringa di caratteri (massimo 60)" << endl;
        cin >> stringa[60];
      estraiParola(stringa[60]);
  cout << stringa;
  
  

  system("PAUSE");	
  return 0;
}
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 18:53   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Devi un po' lavoricchiare sulla teoria

Ti do il prototipo della funzione:

void estraiParola(char stringa[]);
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 19:02   #9
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
ah si...vero.

ora però mi da errore nella dichiarazione della vaiabile stringa all'interno della funzione!
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 19:13   #10
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7027
perché ha lo stesso nome di un parametro, e quindi il tuo codice è ambiguo (vuoi accedere alla variabile locale o al parametro?)
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 20:40   #11
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
risolto quell'errore me ne da un altro qui

estraiParola(stringa[60]);

invalid conversion from char to char
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 22:05   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Se passi stringa[60] passi una carattere...per giunta il 61° e quindi vai anche fuori dai limiti del vettore...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2006, 23:11   #13
TuLKaS85
Senior Member
 
L'Avatar di TuLKaS85
 
Iscritto dal: Nov 2004
Città: Napoli
Messaggi: 999
Ciao spero di averti ottimizzato un pò la function....

Codice:
void estraiParola(char stringa[])
{
 
   while(int i<60) {
       int contatore_spazio = 0;
       if(stringa[i]!=' ') {
       i++; 
       contatore_spazio++;       
        } else { 
           if(contatore_spazio>=7) {
              for(int j=contatore_spazio;j<=0,j--)  
                   cout<<stringa[i-j];
             i++;
   }    
}   
}
così dovresti stampare anche le parole maggiori di 7 caratteri...
se decidi di usarla fai un pò attenzione con il for della stampa non sò se becca tutti i caratteri, ad occhio e croce dovrebbe andare bene.
Ah un altra cosa...
penso che la function debba essere una void dato che non restituisce nulla
in effetti stampa e basta.
__________________
Intel Pentium IV 3,0 GHz, Asus P5SD2-X , 1.0 Gb ddr2, Radeon X550 , Maxtor 160Gb sata, Hitachi 100 gb pata,Piooner Dvr-109 ,Microsoft Windows XP Professional Service Pack 2
TuLKaS85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Dopo un mese, e 50 foto, cosa abbiamo capito della nuova Nintendo Switch 2 Dopo un mese, e 50 foto, cosa abbiamo capito del...
Solo 104€ per questo robot Lefant da 500...
AppleCare One è unico! 3 disposit...
La HP DeskJet 4220e a soli 39€: un po' c...
Muore il traffico dei siti web per colpa...
Auto giapponesi, aria di festa a Tokyo: ...
In arrivo un nuovo mega parco fotovoltai...
LEFANT M2 o M2 Pro? I due robot aspirapo...
Brave Browser blocca Recall: niente pi&u...
Lumma Stealer riparte dopo il maxi-blitz...
Il CEO di OpenAI avverte le banche di un...
Un computer quantistico da 133 qubit ha ...
SMAU Milano 2025: a novembre 180 startup...
Dreame domina il mercato italiano dei ro...
Microsoft aggiorna Windows 10 con KB5062...
Razer Cobra Hyperspeed: la soluzione pi&...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:53.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v