Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
Abbiamo assemblato e provato la Fiido Nomads Pro, evoluzione del modello da trekking già presente nella gamma, che migliora in tutto, soprattutto grazie al motore centrale, fluido e potente. Ottima app, costruzione solida e prezzo ok completano il quadro
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto
Lo chassis in Ceraluminium è il cuore di questo notebook in edizione 2026, un modello pensato per garantire produttività con le tipiche applicazioni di produttività personale e capace di offrire un'autonomia di funzionamento lontano dalla presa di corrente da riferimento. Potenza, facilità di trasporto e costruzione robusta tutto in un notebook compatto.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-06-2013, 15:40   #1
milan92
Member
 
Iscritto dal: Dec 2010
Messaggi: 43
[C] numeri pari in pos pari e dispari in pos dispari

Ciao a tutti!devo costruire in C un array di 10 elementi che do in input che però accetti solo numeri pari in posizione pari e numeri dispari in posizione dispari..io ho provato ma non riesco:
Codice HTML:
# include <stdlib.h>
# include <stdio.h>
int main()
{int a[10],pai,dispari,i;
for(i=0;i<=9;i++)
{
scanf("%d",&a[i]);
if(a[i]%2!=0)
scanf("%d",&a[i]);
else
scanf("%d",&a[i+1]);

}

for (i=0;i<=9;i++)
{  
    printf("%d ",a[i]);
}
system("pause");
return 0;
}
GRAZIE a chi mi pò dare una mano!
Fabio
milan92 è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2013, 16:44   #2
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Devi usare una sola scanf sull'elemento attuale (a[i]) e controllare se è pari o dispari in accordo con l'indice i

Se va bene passi al prossimo elemento nella for, altrimenti ripeti la scanf

In poche parole la scanf va all'interno di un ciclo while, dentro la for ...
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2013, 07:40   #3
ingframin
Senior Member
 
L'Avatar di ingframin
 
Iscritto dal: Apr 2010
Città: Leuven
Messaggi: 667
Ricorda inoltre che gli array sono puntatori gia' di per se, non c'e' bisogno di scrivere &a[i] ma solo a[i].
__________________
L'elettronica digitale non esiste, è solo elettrotecnica con interruttori piccoli!
ingframin è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2013, 10:24   #4
ingframin
Senior Member
 
L'Avatar di ingframin
 
Iscritto dal: Apr 2010
Città: Leuven
Messaggi: 667
Quote:
Originariamente inviato da Antonio23 Guarda i messaggi
...ehm, no. E' necessario che scriva &a[i] per accedere all'indirizzo di a[i]. a è un puntatore alla testa dell'array, quindi al massimo l'alternativa è usare l'aritmetica dei puntatori dove &a[i] equivale ad a+i
Hai ragione, chiedo scusa per la svista...
__________________
L'elettronica digitale non esiste, è solo elettrotecnica con interruttori piccoli!
ingframin è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2013, 21:04   #5
Spe!
Member
 
L'Avatar di Spe!
 
Iscritto dal: Jan 2013
Messaggi: 38
D'accordo con la soluzione proposta da Lorenzo ti propongo una possibile modifica al codice.

Codice:
# include <stdlib.h>
# include <stdio.h>
int main()
{int a[10],i = 0;
for(i=0;i<=9;i++)
{
do{
scanf("%d", &a[i]);
} while ((i%2 == 0 && a[i]%2 !=0) || (i%2 != 0 && a[i]%2 ==0))
}

for (i=0;i<=9;i++)
{  
    printf("%d ",a[i]);
}
system("pause");
return 0;
}
Spe! è offline   Rispondi citando il messaggio o parte di esso
Old 20-06-2013, 09:16   #6
milan92
Member
 
Iscritto dal: Dec 2010
Messaggi: 43
grazie mille!cosi funziona!
milan92 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare MSI PRO MAX: QD-OLED ultrawide per lavorare, cre...
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...
Le auto a benzina scendono sotto il 50% ...
Nuovi sconti della settimana Amazon, 3 n...
Sicurezza degli agenti IA, la ricetta di...
Passkey sotto esame, sono davvero così s...
Valor Mortis, confermati 4K dinamici e 6...
Lenovo A105 in offerta: PC All-in-One co...
iPad mini 8, le indiscrezioni anticipano...
Agenti IA, il principio del minimo privi...
2 super portatili da acquistare in Amazo...
C'è un microblazar nella Via Lattea: a c...
Prezzo bloccato per 24 mesi: come funzio...
I capi dell'AI sono certi: il disastro a...
Sprechi pubblici: nessuno vuole i tablet...
Tutti i dispositivi Amazon in offerta fi...
Nikon squalifica il vincitore di Small W...
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:38.


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