Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-07-2007, 15:53   #1
DarkDiablo
Senior Member
 
Iscritto dal: Apr 2005
Città: Roma
Messaggi: 1275
[C++] Calcolare una media

Salve a tutti,

sono i primi giorni che ho iniziato a sperimentare le mie nuove conoscenze informatiche, e sarebbe a dire le basi (veramente basi ) del c++. Ora, come si inizia subito c'è sempre qualche problema! Nello specifico, quando vado ad eseguire la media tra una somma di numeri e il loro numero (scusate il gioco di parole), il computer mi restituisce dei valore assurdi di 7-8 cifre. Ad esempio se faccio x/y (dove x=5 e y=2 il risutalto è qualcosa come 734523).

Sicuramente sto sbalgiando io qualcosa di veramente stupido, qualcuno mi dà una dirtta?

Se può servire vi posto il codice:

Codice PHP:
#include <iostream>
#include <cstdlib>

using namespace std;

int main()
{

int voti, temp, num_voti, conta, media; // dichairo le variabili

voti, temp, num_voti, conta, media = 0; // inizializzo le variabili a 0

cout << "Inserire numero voti\n"; // chiedo il numero di voti da analizzare
cin >> num_voti;

for (
conta=1; conta<=num_voti; conta++) // inizia cliclo
{
    
cout << "inserire voto n " << conta; 
    
cin >> voti;
    
temp = temp+voti;
} 
// esci quando hai finito di sommare tutti i voti inseriti

media = temp/conta; // calcola la media dei voti
cout << media; // comunica la media all'utente

system("PAUSE");   
return 
0; // bye bye il programma è terminato :D
} 
DarkDiablo è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:05   #2
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
prova a sostituire il tipo delle variabili da int a float. Cosí non ci sono errori di arrotondamento!!!
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:09   #3
DarkDiablo
Senior Member
 
Iscritto dal: Apr 2005
Città: Roma
Messaggi: 1275
Quote:
Originariamente inviato da stdecden Guarda i messaggi
prova a sostituire il tipo delle variabili da int a float. Cosí non ci sono errori di arrotondamento!!!
ma sei una scheggia! O_O Grazie per la pronta risposta!

Ho tentato questo:

Codice PHP:
float voti, temp, num_voti, conta, media; // dichairo le variabili

voti, temp, num_voti, conta, media = 0.00; // inizializzo le variabili a 0 
Ho messo 2 voti: 2, 2. E come risultato mi dà 1,33 periodico
Ho fatto un altro tentativo 3 voti: 2, 3, 4. Il risultato è 2,25
DarkDiablo è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:17   #4
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
un altro suggerimento:
invece di scrivere Variabile = Variablie + Variabile2;
puoi scrivere Variabile += Variabile2;
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:21   #5
DarkDiablo
Senior Member
 
Iscritto dal: Apr 2005
Città: Roma
Messaggi: 1275
Quote:
Originariamente inviato da stdecden Guarda i messaggi
un altro suggerimento:
invece di scrivere Variabile = Variablie + Variabile2;
puoi scrivere Variabile += Variabile2;
ah aveov letto una roba simile da qualche parte, ma non ha avuto effetto purtroppo . In ogni caso grazie mi sarà utile in futuro, ho riprovato le stesse sequenze di prime e mi dà gli stessi risultati
DarkDiablo è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:53   #6
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
Ecco quí, per inizializzare piú variabili devi scrivere:
a = b = c = d = 0;
e non
a,b,c,d = 0;

!!!!
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 16:58   #7
DarkDiablo
Senior Member
 
Iscritto dal: Apr 2005
Città: Roma
Messaggi: 1275
Quote:
Originariamente inviato da stdecden Guarda i messaggi
Ecco quí, per inizializzare piú variabili devi scrivere:
a = b = c = d = 0;
e non
a,b,c,d = 0;

!!!!
ops non lo sapevo :P, ero andato ad intuito così poi non mi aveva dato errori durante la compilazione :S. Ad ogni modo, non funzia ancora Ho provato con questa riga di codice:

Codice PHP:
voti = temp = num_voti = conta = media = 0.00; // inizializzo le variabili a 0 
ho provato anche inserendo 0 come valore e come tipo di variabile sia int che float ma niente :S. A questo punto o è fuso il mio pc, o non compila a dovere, oppure c'è un errore da qualche altra parte . Grazie ancora per la mano che mi stai dando

Ah dimenticavo i risultati! Ho provato le stesse sequenze con float i valori sono gli stessi, con int ovviamente arrotonda a 1, e 2.
DarkDiablo è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 17:00   #8
stdecden
Member
 
L'Avatar di stdecden
 
Iscritto dal: Apr 2007
Messaggi: 263
scusami, mentre cercavo di risponderti avevo giá intuitivamente coretto il tuo errore nel codice che ho ricopiato nel mio ambiente:

Codice:
media = temp/num_voti; // calcola la media dei voti
stdecden è offline   Rispondi citando il messaggio o parte di esso
Old 23-07-2007, 17:34   #9
DarkDiablo
Senior Member
 
Iscritto dal: Apr 2005
Città: Roma
Messaggi: 1275
Quote:
Originariamente inviato da stdecden Guarda i messaggi
Codice:
media = temp/num_voti; // calcola la media dei voti
grandioso! Ha funzionato (sarà stato un errore di distrazione? mah mah!) Grazie mille ancora, sei stato davvero gentilissimo quando finirò ti farò avere il programma che calcola i crediti al liceo :P (sempre se ti serve). Rimani all'erta che sicuramente ripasserò a romperti , grazie tante ancora
DarkDiablo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Ricarica wireless dinamica fino a 150 kW...
Troppi report invalidi generati dall'IA:...
Furto di identità su scala nazion...
HPE vende i primi sistemi AMD Helios per...
Suno AI nel mirino dell'Antitrust: conte...
Xiaomi avrebbe cancellato il suo prossim...
WINDTRE BUSINESS rinnova l’offerta mobil...
BMW inaugura la fabbrica di batterie da ...
Googlebook apre al modding: bootloader s...
Denuvo non molla, vuole scoprire chi &eg...
Il miglior portatile tuttofare a basso p...
Gli agenti di OpenAI hanno mandato in ti...
Follie Amazon Prime: Zenbook è un...
MicroSD SanDisk in offerta Prime Day: Ul...
Steve Jobs, 15 anni dopo: John Ternus e ...
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: 20:10.


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