Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS è il principale operatore di servizi cloud al mondo e da tempo parla delle misure che mette in atto per garantire una maggiore sovranità alle organizzazioni europee. L'azienda ha ora lanciato AWS European Sovereign Cloud, una soluzione specificamente progettata per essere separata e distinta dal cloud "normale" e offrire maggiori tutele e garanzie di sovranità
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto
Xiaomi ha portato sul mercato internazionale la nuova serie Redmi Note, che rappresenta spesso una delle migliori scelte per chi non vuole spendere molto. Il modello 15 Pro+ punta tutto su una batteria capiente e su un ampio display luminoso, sacrificando qualcosa in termini di potenza bruta e velocità di ricarica
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-02-2009, 09:59   #1
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Programmare in C

Salve a tutti, sto iniziando a programmare come da oggetto, cercavo la sezione adatta, ma non l'ho trovata, quindi mi scuso in caso c'è ne sia una e prego i moderatori in tal caso di postare la discussione nella giusta sezione.
Quindi vi chiedo esiste un modo per far separare i numeri pari d quelli dispari?
Grazie
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 10:17   #2
Mailor
Senior Member
 
L'Avatar di Mailor
 
Iscritto dal: Mar 2007
Messaggi: 1459
Quote:
Originariamente inviato da nuvolare Guarda i messaggi
Salve a tutti, sto iniziando a programmare come da oggetto, cercavo la sezione adatta, ma non l'ho trovata, quindi mi scuso in caso c'è ne sia una e prego i moderatori in tal caso di postare la discussione nella giusta sezione.
Quindi vi chiedo esiste un modo per far separare i numeri pari d quelli dispari?
Grazie
if (x%2 ==0) pari
else dispari
__________________
root#> man life
No manual entry for life
root#>_
Mailor è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 10:20   #3
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da Mailor Guarda i messaggi
if (x%2 ==0) pari
else dispari
Mi fa piacere poterti dire che pensavo fosse qualcosa del genere, ma siccome sono agli inizzi non riuscivo a trovare l'inghippo giusto!!!
Grazie 1000
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 10:46   #4
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da Mailor Guarda i messaggi
if (x%2 ==0) pari
else dispari
Scusami stavo implementando il codice ed ho creato due tipi
Codice:
if (numero%2==0)
		printf("Il numero è pari\n");
	else
		printf("Il numero è dispari\n");
e con questo mi dice sempre che è pari

l'altro
Codice:
		x = numero;
	if (numero/2==0)
		printf("Il numero è pari\n");
	else
	{
		printf("Il numero è dispari\n");
	}
}
Mi dice sempre dispari
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 13:09   #5
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Ti sposto nella sezione Programmazione
VICIUS è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 13:48   #6
~FullSyst3m~
Senior Member
 
L'Avatar di ~FullSyst3m~
 
Iscritto dal: Mar 2007
Messaggi: 4683
Quote:
Originariamente inviato da nuvolare Guarda i messaggi
Scusami stavo implementando il codice ed ho creato due tipi
Codice:
if (numero%2==0)
		printf("Il numero è pari\n");
	else
		printf("Il numero è dispari\n");
e con questo mi dice sempre che è pari

l'altro
Codice:
		x = numero;
	if (numero/2==0)
		printf("Il numero è pari\n");
	else
	{
		printf("Il numero è dispari\n");
	}
}
Mi dice sempre dispari
Non conosco C, ma può essere un problema di come è strutturato il codice.
__________________
Firma eliminata e avatar cambiato. Troppa gente giudica il monaco dall'abito.
~FullSyst3m~ è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 14:00   #7
Tommo
Senior Member
 
L'Avatar di Tommo
 
Iscritto dal: Feb 2006
Messaggi: 1304
Credo che numero debba essere float; se è int nella divisione leva la parte dopo la virgola... e quindi numero%2== 0 vale sempre.

Prova con
Codice:
if ( ((float)numero)%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");
__________________
*ToMmO*

devlog | twitter
Tommo è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 14:46   #8
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da Tommo Guarda i messaggi
Credo che numero debba essere float; se è int nella divisione leva la parte dopo la virgola... e quindi numero%2== 0 vale sempre.

Prova con
Codice:
if ( ((float)numero)%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");
Ho pensato potesse essere una cosa del genere, ed ho dichiarato il codice all`inizio, come, float numero; , ma non e` cambiato nulla.
Quindi che differenza ce` tra dichiararlo all`interno del codice, come hai fatto tu ed all`inizio come ho fatto io?
Grazie
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 15:09   #9
Tommo
Senior Member
 
L'Avatar di Tommo
 
Iscritto dal: Feb 2006
Messaggi: 1304
assolutamente nessuna
Ho scritto così perchè non sapevo se il tuo "numero" potesse essere cambiato in float.
Prova a scrivere 2.0f allora, invece che 2...
e sei sicuro che il valore di numero arriva esatto a quel punto dell'esecuzione?
__________________
*ToMmO*

devlog | twitter
Tommo è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 16:24   #10
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
No, numero non deve essere convertito a float.
Questo è il codice giusto.
Codice:
if (numero%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");
% è l'operatore di resto fra interi...il resto fra divisioni float non esiste

if (numero/2==0)

Questa istruzione ti ritorna 0 solo se inserisci il numero 1...per tutti gli altri ti ritorna il risultato della divisione per 2, quendi è ovvio che scriva dispari.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:09   #11
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da cionci Guarda i messaggi
No, numero non deve essere convertito a float.
Questo è il codice giusto.
Codice:
if (numero%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");
% è l'operatore di resto fra interi...il resto fra divisioni float non esiste

if (numero/2==0)

Questa istruzione ti ritorna 0 solo se inserisci il numero 1...per tutti gli altri ti ritorna il risultato della divisione per 2, quendi è ovvio che scriva dispari.
Il mio codice è questo ed a me da sempre pari
Codice:
#include <stdio.h>

int main()
{
	int x;
	int numero ;
	printf("\n");
	printf("***Calcola i numeri pari ed i numeri dispari***\n");
	printf("\n");
	printf("introdurre numero ->  ");
	scanf("%d", &x);
	x = numero;
	if (numero%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");

}
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:10   #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
scanf("%d", &x);
x = numero;
if (numero%2==0)
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:15   #13
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da cionci Guarda i messaggi
scanf("%d", &x);
x = numero;
if (numero%2==0)
Ma non è uguale al mio?
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:18   #14
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
Quote:
Originariamente inviato da nuvolare Guarda i messaggi
Ma non è uguale al mio?
Ho segnato in rosso l'errore
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:25   #15
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da cionci Guarda i messaggi
Ho segnato in rosso l'errore
Quindi devo togliere l'errore e farlo

Codice:
#include <stdio.h>

int main()
{
	int x;
	int numero ;
	printf("\n");
	printf("***Calcola i numeri pari ed i numeri dispari***\n");
	printf("\n");
	printf("introdurre numero ->  ");
	scanf("%d", &x);
	if (numero%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");

}
Ma sempre pari mi da!
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:35   #16
lor84
Member
 
L'Avatar di lor84
 
Iscritto dal: Mar 2008
Città: Civitanova Marche
Messaggi: 32
Quote:
Originariamente inviato da nuvolare Guarda i messaggi
Quindi devo togliere l'errore e farlo

Codice:
#include <stdio.h>

int main()
{
	int x;
	int numero ;
	printf("\n");
	printf("***Calcola i numeri pari ed i numeri dispari***\n");
	printf("\n");
	printf("introdurre numero ->  ");
	scanf("%d", &x);
	if (numero%2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");

}
Ma sempre pari mi da!
innanzitutto il controllo non lo devi fare su numero che non è inizializzato ma su x (toglilo numero che non serve).. poi come detto prima devi usare come tipo un float anzichè un int
lor84 è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:46   #17
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
Quote:
Originariamente inviato da lor84 Guarda i messaggi
poi come detto prima devi usare come tipo un float anzichè un int
Ma assolutamente NO, l'ho già scritto sopra.
Non esiste il resto nella divisione fra numeri float. L'operatore % si chiama: resto della divisione intera. Vuole due interi come operandi.

Ovviamente poteva utilizzare direttamente x per fare il modulo (altro nome dell'operatore %), ma il problema nel suo codice è l'assegnazione. Non l'avevo segnata in rosso perché la dovesse togliere, l'avevo segnata in rosso perché pensasse a quello che aveva scritto e del perché non è corretto.
Legge x, assegna numero a x e poi fa il modulo su numero...c'è qualcosa che non torna...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 17:52   #18
lor84
Member
 
L'Avatar di lor84
 
Iscritto dal: Mar 2008
Città: Civitanova Marche
Messaggi: 32
Quote:
Originariamente inviato da cionci Guarda i messaggi
Ma assolutamente NO, l'ho già scritto sopra.
Non esiste il resto nella divisione fra numeri float. L'operatore % si chiama: resto della divisione intera. Vuole due interi come operandi.

Ovviamente poteva utilizzare direttamente x per fare il modulo (altro nome dell'operatore %), ma il problema nel suo codice è l'assegnazione. Non l'avevo segnata in rosso perché la dovesse togliere, l'avevo segnata in rosso perché pensasse a quello che aveva scritto e del perché non è corretto.
Legge x, assegna numero a x e poi fa il modulo su numero...c'è qualcosa che non torna...
si giusto...(non avevo letto il post sopra)
lor84 è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 18:04   #19
nuvolare
Member
 
Iscritto dal: Jan 2006
Messaggi: 299
Quote:
Originariamente inviato da cionci Guarda i messaggi
Ma assolutamente NO, l'ho già scritto sopra.
Non esiste il resto nella divisione fra numeri float. L'operatore % si chiama: resto della divisione intera. Vuole due interi come operandi.

Ovviamente poteva utilizzare direttamente x per fare il modulo (altro nome dell'operatore %), ma il problema nel suo codice è l'assegnazione. Non l'avevo segnata in rosso perché la dovesse togliere, l'avevo segnata in rosso perché pensasse a quello che aveva scritto e del perché non è corretto.
Legge x, assegna numero a x e poi fa il modulo su numero...c'è qualcosa che non torna...
Ok, ho capito...
Siccome lo hai segnato in rosso ho pensato che il tuo intento fosse quello di dirmi che quello era l'errore e quindi l'ho tolto, invece tu mi avevi segnato l'errore per farmi riflettere, che in effetti è la soluzione migliore.
Quindi Grazie, 1000
ormai giusto per far vedere il codice incollo qua sotto quello corretto

Codice:
#include <stdio.h>

int main()
{
	int x;
	int numero ;
	printf("\n");
	printf("***Calcola i numeri pari ed i numeri dispari***\n");
	printf("\n");
	printf("introdurre numero ->  ");
	scanf("%d", &x);
	if (x %2==0)
	printf("Il numero è pari\n");
else
	printf("Il numero è dispari\n");

}
nuvolare è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2009, 18:06   #20
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
Ma non mi hai detto ancora quale errore avevi fatto
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Apple Watch in offerta su Amazon: Series...
Oltre 260 mila core: dentro Athena, il n...
Crolla il prezzo dei nuovi Echo Show 11 ...
Jensen Huang è insostituibile? Il...
Urbanista Austin 2: auricolari true wire...
ASML: nel 2025 ricavi record ma 1700 per...
iPad Air con chip M3 e 5G scende a 799€ ...
Le Ricerche Google si evolvono ancora: a...
La Cina ha approvato le prime importazio...
Per pochi, pochissimi: Lenovo Legion Pro...
Addio rame? Scoperto un metallo che diss...
Android 17 punterà su trasparenze...
Le 2 migliori scope elettriche su Amazon...
Il settore dei monitor OLED non sente la...
Google Foto sta testando una sezione Esp...
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:25.


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