Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Nelle ultime settimane abbiamo provato la Corsair Vanguard Air 99 Wireless, una tastiera tecnicamente da gaming, ma che in realtà offre un ampio ventaglio di possibilità anche al di fuori delle sessioni di gioco. Flessibilità e funzionalità sono le parole d'ordine di una periferica che si rivolge a chi cerca un prodotto capace di adattarsi a ogni esigenza e ogni piattaforma
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
DEEBOT T90 PRO OMNI abbina un sistema di aspirazione basato su tecnologia BLAST ad un rullo di lavaggio dei pavimenti dalla larghezza elevata, capace di trattare al meglio le superfici di casa minimizzando i tempi di lavoro. Un robot completo che riesce anche ad essere sottile e garantire automazione ed efficienza nelle operazioni di pulizia di casa
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Per diversi giorni il Galaxy S26 Ultra di Samsung è stato il nostro compagno di vita. Oltre alle conferme del colosso coreano come la qualità del display e una suite AI senza rivali, arriva il Privacy Display, un unicum nel mondo smartphone. Ci sono ancora alcuni gap che non sono riusciti a colmare lato batteria e fotocamera, seppur con alcuni miglioramenti.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-03-2008, 16:17   #1
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
[C++] aiuto sottoprogrammi

salve a tutti , volevo un aiuto su un programma che ho fatto che ovviamente non funziona come dovrebbe. Il programma in questione deve calcolare l'area e il perimetro di una circonferenza , ma l'esercizio deve essere svolto PURTROPPO con i sottoprogrammi. Io ho fatto tutto ma quando mi stampa a video "l'area risulta .... " e " perimetro risulta ...." mi escono valori molto strani, magari sbaglio a richiamare il sottoprogramma? mi manca qualcosa della teoria che dovrei sapere ? Dov'è che sbaglio ??( perchè a me sembra tutto corretto). Se c'è qualche persona che mi può far capire come devo fare per far stampare a video il risultato giusto gliene sarei molto grato. Allego il file in txt , poi magari se volete potete poi riconvertirlo in .cpp per vedere il risalto dei colori

Attendo vostre notizie e ringrazio chi mi risponde ciaooo
Allegati
File Type: txt cerchio.txt (924 Bytes, 13 visite)

Ultima modifica di PaCo87 : 20-03-2008 alle 16:27.
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 16:58   #2
Torav
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 558
beh direi che non assegni i valori che ti ritornano!
dovresti avere

area = calcolaSuperficie(raggio)
perimetro = calcolaPerimetro(raggio)

altrimenti ovviamente ti becchi i valori strani che di solito hanno le variabili non inizializzate!
Torav è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 17:00   #3
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Due cose:
1 - Hai invertito il calcolo della superficie con quello del perimetro;
2 - Hai definito delle FUNZIONI, le quali ritornano il valore calcolato, che pero' non vai ad utilizzare: infatti ad area e perimetro non assegni alcun valore, pero' le stampi. Il contenuto e' ovviamente indefinito.
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 17:17   #4
jappilas
Senior Member
 
L'Avatar di jappilas
 
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4747
Quote:
Originariamente inviato da PaCo87 Guarda i messaggi
salve a tutti , volevo un aiuto su un programma che ho fatto che ovviamente non funziona come dovrebbe. Il programma in questione deve calcolare l'area e il perimetro di una circonferenza , ma l'esercizio deve essere svolto PURTROPPO con i sottoprogrammi. Io ho fatto tutto ma quando mi stampa a video "l'area risulta .... " e " perimetro risulta ...." mi escono valori molto strani, magari sbaglio a richiamare il sottoprogramma? mi manca qualcosa della teoria che dovrei sapere ? Dov'è che sbaglio ??( perchè a me sembra tutto corretto). Se c'è qualche persona che mi può far capire come devo fare per far stampare a video il risultato giusto gliene sarei molto grato. Allego il file in txt , poi magari se volete potete poi riconvertirlo in .cpp per vedere il risalto dei colori

Attendo vostre notizie e ringrazio chi mi risponde ciaooo
le funzioni calcolaSuperficie() e calcolaPerimetro() (in realtà trattandosi di un cerchio sarebbe la circonferenza, ma a parte ciò) calcolano e restituiscono dei numeri float, ma non alterano le variabili area e perimetro, il cui valore resta quello (indefinito, in mancanza di inizializzazione esplicita) che avevano al momento dell' istanziazione, da qui i valori "strani" che vedi
prova ad assegnare i valori calcolati alle rispettive variabili

area = calcolaSuperficie(raggio);
perimetro = calcolaPerimetro(raggio);

EDIT mi scuso per l' intervento tardivo
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name
Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish
Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate

Ultima modifica di jappilas : 20-03-2008 alle 17:20.
jappilas è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 17:28   #5
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
ora provo e vi dico
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 18:08   #6
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
ragazzi voglio ringraziarvi tutti sono riuscito solo ed esclusivamente grazie a voi non ci sarei mai arrivato perchè il prof a lezione mica c'aveva fatto un esempio? -.-' già è troppo capire come funzionava la chiamata e in genere il sottoprogramma mi mancava questo piccolo pezzettino che è risultata la parte piu' importante per la risoluzione dell'esercizio Ora ho un dubbio ma perchè mi approssima i valori?? esempio con raggio 4 , l'area = 25,12 e il perimetro = 50,24 mentre il programma mi da come risultati area = 24 e perimetro = 48 ??? eppure ho messo la variabile float ( numeri reali con precisione singola) devo mettere percaso double??? O.o Poi un' ultima cosa nel caso volessi calcolare per più circonferenze l'area e il perimetro sempre con il metodo dei sottoprogrammi , devo creare un ciclo for o while nel sottoprogramma principale??? grazie anche per questa risposta
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 18:33   #7
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Codice:
perimetro = (raggio * raggio ) * 3,14 ;
Non devi scrivere 3,14. Devi invece scrivere 3.14.
Quello che succede nel tuo caso e' che, usando la virgola, veniva eseguito:

Codice:
perimetro = (raggio * raggio ) * 3;
e 14 veniva considerata un'istruzione separata.
Infatti, nota che 14 e' un'istruzione valida per il C/C++
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 18:38   #8
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Codice:
perimetro = (raggio * raggio ) * 3,14 ;
Non devi scrivere 3,14. Devi invece scrivere 3.14.
Quello che succede nel tuo caso e' che, usando la virgola, veniva eseguito:

Codice:
perimetro = (raggio * raggio ) * 3;
e 14 veniva considerata un'istruzione separata.
Infatti, nota che 14 e' un'istruzione valida per il C/C++
uau quante cose sto imparando oggi XD , grazie mille , mah questo esame lo vedo nero :o , cmq grazie per gli aiuti dati ,m'avete fatto imparare tante cose. un saluto e buona Pasqua a tutti
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 18:52   #9
Luca69
Senior Member
 
L'Avatar di Luca69
 
Iscritto dal: Mar 2003
Città: Udine <--> Villach
Messaggi: 2589
..che bello il C ... qunati ricordi.... vedrai che tra poco arrivano i crash
__________________
Life is what happens to you while you are busy making other plans (John Lennon)
Luca69 è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2008, 19:05   #10
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
Quote:
Originariamente inviato da Luca69 Guarda i messaggi
..che bello il C ... qunati ricordi.... vedrai che tra poco arrivano i crash
si sarà pure bello il C++, però per la mia futura professione non servirà a molto,cmq il mio esame d'informatica comprende , condizioni IF , ciclo for e while e sottoprogrammi , questo è il programma che dobbiamo svolgere durante il corso.
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:12   #11
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da PaCo87 Guarda i messaggi
si sarà pure bello il C++, però per la mia futura professione non servirà a molto,cmq il mio esame d'informatica comprende , condizioni IF , ciclo for e while e sottoprogrammi , questo è il programma che dobbiamo svolgere durante il corso.
niente classi? sicuro che sia un esame di C++ e non di C?
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 21-03-2008, 11:16   #12
PaCo87
Senior Member
 
L'Avatar di PaCo87
 
Iscritto dal: Dec 2006
Messaggi: 381
Quote:
Originariamente inviato da 71104 Guarda i messaggi
niente classi? sicuro che sia un esame di C++ e non di C?
hihi sicurissimo XD è un esame da 4 crediti
PaCo87 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale Corsair Vanguard Air 99 Wireless: non si era mai...
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lav...
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
Le nuove offerte Amazon, con aggiornamen...
5 motivi per comprare oggi Motorola Edge...
I produttori di memorie non vogliono inv...
VMware Hosted Private Cloud, il cloud pr...
Le cuffie per giocatori JBL Quantum 910X...
Xiaomi Watch S3 a prezzo dimezzato: 15 g...
Nothing Phone (2a) a poco più di ...
OnePlus prepara due nuovi tablet Android...
ASUS Zenbook supera MacBook Air in tutto...
Amazfit Active 2 a 71,49€ protagonista d...
Tutti gli iPhone avranno display ProMoti...
DLSS 5 irriso sul web, secondo il CEO di...
Scoperta al CERN una particella mai vist...
Stampante HP a 37,99€: Wi-Fi, scanner e ...
OPPO annuncia l'arrivo in Italia della A...
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: 10:35.


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