IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
Ciao volevo chiedervi una mano per informatica. Questa materia mi sta abbastanza antipatica e il professore ancora di più... per le vacanze ci ha dato alcuni esercizi da fare, ma poichè io non ci vedo nulla di logico specialmente per quanto riguarda la teoria, volevo, per chi si intende di questa materia, chiedere una mano... Ho fatto i programmi in c++ che ci ha dato, ma della teoria proprio non c'ho capito niente... chi mi può aiutare? Intanto scrivi i programmi che ho fatto? Grazie ancora!! ;)

VAbbè intanto posto quello che ho fatto
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Ma ti serve un aiuto per la teoria o per la programmazione in sè?
IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
Per entrambi!! Comunque la programmazione la so fare abbastanza bene, volevo solo postare i miei programmi per vedere se sono giusti!

Ecco intanto posto questo:
/*Scrivere un programma in c++ che, utilizzando la funzione ad hoc in separi (int number), permetta di:
-caricare un vettore a di n numeri interi con n compreso tra 10 e 20
-stampare quanti elementi del vettore sono pari e quanti sono dispari*/

#include<stdio.h>
#include<stdlib.h>
int n,i,a[21];
int kpari;
int kdispari;
int separi (int number);
main()
{for(;; ) /*loop infinito*/
{printf(“\n Inserisci N= “);
scanf(“%d”,&n);
if(n>=10 && n<=20)
{break;}
}
for(i=1;i<=n,i++) /*carico il vettore a*/
{printf(“\n A[%d]= “);
scanf(“%d”,&a[i ]);
}
kpari=0
kdispari=0;
for(i=1;i<=n;i++)
{if separi(a[i ]==0)
{kpari++}
else
{kdispari++}
printf(“\n gli elementi pari del vettore sono %d”, kpari);
printf(“\n gli elementi dispari del vettore sono %d”, dispari);
printf(“\n\n”);
system (“PAUSE”);
}
int separi (int number)
{return num%2;}



Non mi sposta le cose!!!
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Io non ho mai fatto a scuola questo tipo di linguaggio, però qua a casa ho un libro sul c++ dove spiega abbastanza bene i vari comandi ed istruzioni. Se ti serve sapere qualcosa di teoria, basta che mi domandi e controllo subito.
Ed inoltre mi sembra sia molto simile al pascal: ad esempio in c++ si dice variabili float, in Pascal si dice variabili real. Se scrivi il programma, magari ci posso dare un'occhiata e vedere se con l'aiuto del libro ci capisco qualcosa :satisfied

Spero di esserti utile in qualche modo...:dozingoff
IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
Grazie Stefano, non è molto simile al Pascal (io il pascal l'ho fatto al biennio), comunque ora ho fatto scritto al computer dal quadernone, questo qua! Spero sia giusto!!
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Eh, sinceramente non ci ho capito molto :lol

Facciamo un passo alla volta:

IPPLALA : #include<stdio.h>
#include<stdlib.h>
int n,i,a[21];
int kpari;
int kdispari;
int separi (int number);

Questa è la parte introduttiva del programma, dove espliciti le variabili intere n,i,a. Non capisco perchè hai messo stdlib.h nella seconda direttiva...
IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
Allora, priva di avviare il programma devo denunciare le librerie, cioè come se fosse in matematica il mio dominio, il mio banco di lavoro sul quale devo trovare i valori e poi devo denunciare le variabili, come se fossero le incognite in matematica capito?
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Ok, dunque servono per la compilazione.

Poi:

IPPLALA : main()
{for(;; ) /*loop infinito*/
{printf(“\n Inserisci N= “);
scanf(“%d”,&n);
if(n>=10 && n<=20)
{break;}
}

Questo è un ciclo dove inserisci continuamente il numero n finchè non ne immetti un valore compreso tra 10 e 20. Ma non dovrebbe essere un ciclo WHILE? Infatti tu non sai quante volte lo deve ripetere il ciclo: con il for tu devi sapere il numero esatto di volte...

...Cosa significa questo --> {for(;; ) /*loop infinito*/
xico87
xico87 - Mito - 28236 Punti
Rispondi Cita Salva
mmm quello è un ciclo.. ipp dovresti chiedere a trifaux
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Ho capito che è un ciclo, però in teoria si dovrebbe usare il ciclo while perchè non sai quante volte il comando si ripete (dipende dal numero che inserisci da tastiera), non il ciclo for. Lei ha usato il ciclo for, però credo in maniera diversa da quella standard: di solito tra parentesi va inserito --> i>val minimo; i<val massimo; i++ , mentre lei ha messo quel "loop infinito" che non so cosa sia (sembra quasi che abbia esteso il ciclo for all'infinito, interrompendolo solo quando la condizione della if è verificata).

Però non so se sia così, in realtà...
IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
Quello si chiama loop infinito (cioè quello che ho scritto tra /* e */ e significa che è un ciclo while senza parametri cioè senza i=1; i<=n;i++!

Questo mi permette di caricare n e mi chiede il valore di n tante volte finche non scrivo un numero compreso tra 10 e 20..

Quello che dici tu cioè for (i=1;i<=n;i++) lo usi SOLO QUANDO IL VALORE DI N GIà CE L HAI, ma qui lo stai cercando... per esempio, se devo caricare un vettore a lo uso!!
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
Ok, più o meno l'avevo intuito allora.

IPPLALA : {printf(“\n Inserisci N= “);

Mi sa che manca il secondo \n


Per il resto non saprei aiutarti...e non credo di esserlo stato minimamente fino ad adesso :lol

Mi dispiace, ma mi è difficile capirlo così su due piedi...:dozingoff:dontgetit
IPPLALA
IPPLALA - Mito - 101142 Punti
Rispondi Cita Salva
No no, non ti preoccupare, sei stato gentilissimo (comunque lì di \n ce ne puoi mettere quanti vuoi, anche 1000 sono spazi!)...

Speriamo che qualcuno mi possa aiutare e possa controllare il programma!!

Thanks Stè ;););)
Sasuke
Sasuke - Genius - 5778 Punti
Rispondi Cita Salva
io sto facendo ancora pascal,nn posso eserti di nessun help
SuperGaara
SuperGaara - Mito - 120308 Punti
Rispondi Cita Salva
IPPLALA : No no, non ti preoccupare, sei stato gentilissimo (comunque lì di \n ce ne puoi mettere quanti vuoi, anche 1000 sono spazi!)...

Ah ok...:p

IPPLALA : Speriamo che qualcuno mi possa aiutare e possa controllare il programma!!

Thanks Stè

Speriamo...;)


Cmq se hai dubbi o vuoi sapere qualcosa di più sul c++, dimmi che ti riporto ciò che dice il libro a riguardo (sempre se voi non ne abbiate uno vostro)!

Pagine: 12

Questo topic è bloccato, non sono ammesse altre risposte.
Come guadagno Punti nel Forum? Leggi la guida completa
In evidenza
Classifica Mensile
Vincitori di novembre
Vincitori di novembre

Come partecipare? | Classifica Community

Community Live

Partecipa alla Community e scala la classifica

Vai al Forum | Invia appunti | Vai alla classifica

Max

Max Geek 689 Punti

VIP
Registrati via email