|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
Linguaggio C : delucidazioni
Salve a tutti:
vorrei chiedere ai piu esperti o a coloro che conoscono cmq il linguaggio C di aiutarmi in due "programmi" Vorrei sapere come è possibile svolgere le seguenti traccie con relativa descrizione passaggio per passaggio. 1) Scrivere un programma che legga 3 numeri e ne stampi il massimo (con descrizione istruzione per istruzione ed il perchè dei passaggi ) 2) Scrivere un programma che , dati un numero diverso da 0, ed una sequenza di numeri terminata da uno 0, stampi in uscita 1 se il primo numero esiste nella sequenza, 0 in caso contrario (idem come su ) ps: sarebbe possibile sapere a cosa servono in C i simboli %, & ??? es: due serie di numeri separate da uno & e chiuse da un % ...... cosa significa? grazie a tutti in anticipo
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#2 | ||||
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
A quel punto determinare il valore maggiore è semplice, avendo 3 numeri basta fare 2 test in sequenza per ottenerlo. Quote:
Quote:
Il & ha 2 significati e dipende da come lo usi. Messo prima di una variabile, consente di ottenere l'indirizzo della variabile. Nel caso di utilizzo con 2 operandi, effettua l'operazione booleana di AND bitwise cioè sui singoli bit degli operandi. Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
||||
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
entrambi i programmi devo farli con
scanf printf while if linguaggio base insomma..... help me please
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Nov 2004
Messaggi: 357
|
Sono degli esercizietti facenti parte di un corso immagino
Se te lis criviamo noi, la loro funzione didattica che fine fa? prova ad iniziarli, se hai dubbi chiedi |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
io li ho fatti
il problema è che purtroppo non ho risoluzioni , ma solo tracce, domani ho un test e qst due traccie (facenti parte di esercizi) mi stanno preoccupando nn poco In realtà li ho fatti meccanicamente guardando un po su internet ma nn so se vadano bene, e cmq sia vorrei capire i passaggi ( il ragionamento logico )
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4739
|
Quote:
__________________
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
|
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
anche se postassi cmq nn servirebbe a nulla, in quanto non ho cmq capito realmente cosa ho scritto.
Per qst programmi ho copiato e visto da internet , senza capire. E' che non riesco ad arrivare da solo alla stesura di un programma in merito a qst due esempi.... (sarò scemo io...)
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
nessuno!?
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#9 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
scusa, non si è capito cosa vorresti da noi
non serve che te li scriviamo perché già li hai copiati da internet, non ce li puoi postare perché anche se ti spiegassimo non capiresti, a spiegare t'ha già spiegato andbin... che dobbiamo fare? ce l'hai un libro di testo? fai come se questo forum non esistesse: cerca di capire da solo, leggi i programmi passo passo e studia sul libro ogni singola cosa |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
Quote:
guarda sei stato utilissimo ma soprattutto gentilissimo. Se fossi stupido mi offenderei..... cioè mi vieni a dire di studiare? E' un mese che faccio esercizi e cerco di capire ogni singola cosa, credo sia normale avere difficoltà dato che sui libri non sempre sono spiegati i passaggi, e dato che non ho nessuno a cui chiedere...vabe lasciam perdere. Cmq grazie a tutti....( e qst è perchè ho chiesto la spiegazione del ragionamento passo passo.....azz!!!)
__________________
FodallechineHWU on Grid |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Per il primo:
Codice:
#include <stdio.h>
#include <stdlib.h>
main()
{
int i,num,temp=0; //Dichiari le variabili ossia predisponi uno spazio di memoria in grado
//di contenere variabili di quel tipo, in questa caso di tipo int
for(i=0;i<3;i++){
printf("Inserisci il numero %d",i+1);
scanf("%d",&num);
if(num>temp) temp=num;
}
printf("Il maggiore e' %d", temp);
getch();
}
L'istruzione che deve essere VERA nel nostro caso è i<3, essa è ovviamente vera finchè i<3, e visto che i parte da 0 e viene incrementata,con i++, ad ongi ciclo, essa rimarà vera per 3 volte. Significa quindi che le istruzione tra le graffe(soot al for) vengono ripetute per 3 volte. printf stampa sulla consolle una stringa(quella tra le ""), sostituendo il simbolo %d con la prima variabile che trova dopo la stringa, nel nostro caso stamperà: Inserisci il numero 1,Inserisci il numero 2,Inserisci il numero 3... scanf prende dentro invece una variabile e la salva in una locazione di memoria, per farlo bisogna dirgli dove si trova questa locazione e quindi gli si passa il suo indirizzo con &nomevariabile(qui ti serve un buon libro per capirci). Con l'if non faccio altro che controllare ogni volta se il nuovo valore immesso è maggiore della variabile temp, se si lo salvo nella varibile temp stessa. Quindi si avrà che nella variabile temp risiederà il maggiore tra quelli imessi, non ti resta che stampare questa varibile. Nota che questo è solo un dei metodi, ce ne sono altri. Ti posso anche dire che questo esercizio è molto banale, quindi presuppongo che hai appena iniziato a guardare il C e non hai mai visto altri linguaggi di programmazione, se è così ti conviene come ti hanno cosigliato studiare un po' da solo e poi chiedere... |
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Quote:
Per esempio : int ris=5%2; //esegue la divisione tra 5 e 2 e salva il resto in ris(resto=1) printf("Sono le %d emmezza!", 11); //Stampa: Sono le 11 emmezza! ecc ecc... Mentre ad esempio: if(a&&b) esegue l'and tra a e b su tutti i bit if(a&b) esegue l'and binario viene poi anche usato per esprimere l'indirizzo di memoria di una variabile, ma qui devi per forza leggerti dei libri, e comunque è meglio che ti impari questo dopo che hai imparato i fondamenti. Comunque ti ripeto è meglio se prima studi da solo, e dovresti anche sapere un pochettino come funziona un calcolatore... |
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
"l'indirizzo di memoria di una variabile" a noi sembra scontato ma ad uno che non sa come funge un pc sembra arabo Pero' pure tu revo ... chiedere delucidazioni la sera prima del test
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Nov 2004
Messaggi: 357
|
Quote:
|
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
Quote:
i bit c entrano se invece di && si ha solo &. Cmq, io frequento scienze della consevazione dei beni culturali, ed il corso di informatica (2) prevede il linguaggio base di C; per ciò che riguarda macchina di von Neumann, ram e via dicendo ok; poi ci han fatto vedere i tipi di istruzioni (assegnamento, iterativa, condizione , composte , etc etc ) e poi siam passati agli esercizi. Ci sn quelli davvero semplici ( anche con ciclo While (condizione) e corpo istruzione(del ciclo) ), e poi c sn cmq quelli che sn piu difficili, non perchè nn sappia qst cose ma perchè è difficile ( per me ) il ragionamento per arrivare ad una conclusione. Ieri ho semplicemente chiesto come svolgere (con spiegazione relativa) qst due ragionamenti logici poichè facendo i miei soliti esercizi, nn ci ero riuscito. Non mi sembra chissa qnt strano
__________________
FodallechineHWU on Grid |
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Quote:
|
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: May 2005
Città: Caserta
Messaggi: 2664
|
ma io posso fare in questo modo?!
main() { scanf (x); scanf (y); scanf (z); if (x>y==x>z) printf (x) else if (y>x==y>z) printf (y) else printf (z)
__________________
FodallechineHWU on Grid |
|
|
|
|
|
#19 | ||
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
||
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
Quote:
x y z vanno dichiarate prima la funzione scanf ha bisogno di sapere il tipo di dato che ricevera'. la printf deve sapere il tipo di dato che stampera' . ma l'esempio che t'ha mostrato MEMon non ti piace ? a parte la "getch()" (mi sa che usa il Borland e poi con "if (x>y==x>z)" cosa stai cercando di fare ? prova a tradurla in italiano: "se x e' maggiore di y e' uguale a x maggiore di z" non ha nessun significato
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:01.



















