PSEUCODIFICA ARRAY E MATRICI
Ciao a tutti,
Vi scrivo per kiedervi aiuto sulla pseucodofica d array e matrici.
Sono molto poco ferrato sull argomento e volevo conoscere una procedura per la risoluzione dell esercizio in allegato, dato ke sn grossomodo tutti simili quelli dell esame..
Vi ringrazio.
Vi scrivo per kiedervi aiuto sulla pseucodofica d array e matrici.
Sono molto poco ferrato sull argomento e volevo conoscere una procedura per la risoluzione dell esercizio in allegato, dato ke sn grossomodo tutti simili quelli dell esame..
Vi ringrazio.

Risposte
s/pseucodifica/pseudocodifica
La risoluzione più semplice è quella di seguire i passi dell'algoritmo uno per volta, e da bravi pierini scriversi da una parte i valori come cambiano ad ogni passo:
Con un po' di dimestichezza ti accorgi che qualcosa può essere evitato per fare prima (es. 'n' non cambia, è sempre 6, quindi non ha senso riscriverlo e neppure metterlo nelle tabelle, lo stesso vale per 'a' e 'v1').
Con ancora un po' di esercizio tutto ciò non servirà più, farai tutto a mente.
PS. L'esame "Fondamenti di informatica" a molti corsi di ingegneria è un tal minestrone, e fatto ovunque in maniera diversa... non capisco perché continuino a mantenerlo, ché secondo me non serve a nulla.
La risoluzione più semplice è quella di seguire i passi dell'algoritmo uno per volta, e da bravi pierini scriversi da una parte i valori come cambiano ad ogni passo:
nome | x | y | n | i | a | v1 1.. 6 --------------------------------------- inizio | 0 | 0 | 6 | 0 | 10| 7 2 3 4 2 1 step 1 | 1 | 8 | 6 | 3 | 10| 7 2 3 4 2 1
Con un po' di dimestichezza ti accorgi che qualcosa può essere evitato per fare prima (es. 'n' non cambia, è sempre 6, quindi non ha senso riscriverlo e neppure metterlo nelle tabelle, lo stesso vale per 'a' e 'v1').
Con ancora un po' di esercizio tutto ciò non servirà più, farai tutto a mente.
PS. L'esame "Fondamenti di informatica" a molti corsi di ingegneria è un tal minestrone, e fatto ovunque in maniera diversa... non capisco perché continuino a mantenerlo, ché secondo me non serve a nulla.
Innanzitutto grazie per la risposta:)
Il mio problema principale riguarda soprattutto il codice. Ad esempio, il comando RIPETI e la funzione assegnazione come vanno interpretate? Intendo proprio lo step uno, potresti spiegarlo a parole? Immagino ke per ki è ferrato sia semplicissimo, e me ne scuso:)
Il mio problema principale riguarda soprattutto il codice. Ad esempio, il comando RIPETI e la funzione assegnazione come vanno interpretate? Intendo proprio lo step uno, potresti spiegarlo a parole? Immagino ke per ki è ferrato sia semplicissimo, e me ne scuso:)
Ripeti e' la pseudo-codifica di un istruzione di ciclo, come il ciclo FOR, il WHILE o il REPEAT UNTIL, che alla fine dipende dal linguaggio di programmazione usato,
in questo caso dice semplicemente che hai un ciclo in cui fa variare il valore della variabile $i$ da $n/2$ a $1$ (un ciclo discendente), poi nella riga successiva assegna il valore di una cella del vettore alla variabile $x$, poi somma il valore di $x$ al valore di $y$ e poi ci sono dei test....
in questo caso dice semplicemente che hai un ciclo in cui fa variare il valore della variabile $i$ da $n/2$ a $1$ (un ciclo discendente), poi nella riga successiva assegna il valore di una cella del vettore alla variabile $x$, poi somma il valore di $x$ al valore di $y$ e poi ci sono dei test....
quindi,
1o passo: i varia da 3 a 1, parto da 3; a x assegno il sesto valore del vettore, cioè 1. A y assegno y+x=0+1=1;
2o passo: 1<10, quindi a-y=10-1=9;
3o passo: y=9-1=8
é corretto?
1o passo: i varia da 3 a 1, parto da 3; a x assegno il sesto valore del vettore, cioè 1. A y assegno y+x=0+1=1;
2o passo: 1<10, quindi a-y=10-1=9;
3o passo: y=9-1=8
é corretto?
mi sembra di si


A parte gli skerzi scusate l invadenza..

Qui la situazione si complica perche' hai una matrice, quindi devi "seguire" due indici, ma il concetto e' lo stesso di prima.
Cosa non capisci?
Cosa non capisci?
nn capisco l istruzione "conta", e poi l istruzione ripeti finche x=0 (x nn vale sempre 0?).
Sarebbe possibile parlarne anke tramite msn? ruberei pokissimo tempo, l importante sarebbe farmi capire i passaggi fondamentali.
Sarebbe possibile parlarne anke tramite msn? ruberei pokissimo tempo, l importante sarebbe farmi capire i passaggi fondamentali.
conta e' una variabile che viene incrementata di $1$ se si verifica la condizione indicata nel se.
Il ciclo ripeti finchè $x=0$ e' un ciclo che continua ad essere eseguito fino a quando $x$ e' uguale a zero,
nel momento che il valore di $x$ cambia allora il ciclo termina...
Mi dispiace ma non posso usare MSN.
Secondo me pero' dovresti rivedere la parte di teoria che spiega queste cose, perche' mi sembra che non ti siano
per niente chiare...
Il ciclo ripeti finchè $x=0$ e' un ciclo che continua ad essere eseguito fino a quando $x$ e' uguale a zero,
nel momento che il valore di $x$ cambia allora il ciclo termina...
Mi dispiace ma non posso usare MSN.
Secondo me pero' dovresti rivedere la parte di teoria che spiega queste cose, perche' mi sembra che non ti siano
per niente chiare...
purtroppo posso usare solo le dispense del prof, sulle quali xò nn v sn nè esempi nè il codice tipico della prova d esame. ho provato a cercare su internet ma nn ho trovato nulla d simile. conosci qualke testo o risorsa web dove posso approfondire l argomento?
"reye":
purtroppo posso usare solo le dispense del prof, sulle quali xò nn v sn nè esempi nè il codice tipico della prova d esame. ho provato a cercare su internet ma nn ho trovato nulla d simile. conosci qualke testo o risorsa web dove posso approfondire l argomento?
che tipo di dispense cerchi?
Dato che, penso, questo esame tratti mille argomenti di informatica in modo molto blando.
Prova a cercare nella sezione dispense e controlla gli ultimi due post che ho messo, sicuro trovi materiale

PS: ma chi scrive quegli esami? Come fanno a tradurre "for" "if" ecc, parole chiave dell'informatica...è più complicato capire cosa siano quelle parole, che il codice in sè

Ma di preciso che stai studiando? Per le dispense io qualcosa in formato pdf dovrei averlo, pero' dipende da cosa ti serve.
cerkerò tra le dispense ke m hai detto cmq:) il problema è proprio quello, credo ke sia + semplice studiare un vero e proprio codice..a me servirebbe un esercizio svolto e commentato dei 4 ke ho da risolvere, xkè immagino ke siano simili.
l esame è fondamenti di informatica..s divide in 2 parti: una d codifica (su cui vado a gonfie vele) e una d pseudocodifica, cm i 2 es ke ho postato prima. in buona sostanza, se avessi del materiale ke m spiega come s applicano a vettori e matrici gli operatori "ripeti" "fine se" "else" e "conta" sarei a cavallo

/OT
Come detto sopra: minestrone.
TO/
"ham_burst":
PS: ma chi scrive quegli esami? Come fanno a tradurre "for" "if" ecc, parole chiave dell'informatica...è più complicato capire cosa siano
quelle parole, che il codice in sè
Come detto sopra: minestrone.
TO/
"reye":
l esame è fondamenti di informatica..s divide in 2 parti: una d codifica (su cui vado a gonfie vele) e una d pseudocodifica, cm i 2 es ke ho postato prima. in buona sostanza, se avessi del materiale ke m spiega come s applicano a vettori e matrici gli operatori "ripeti" "fine se" "else" e "conta" sarei a cavallo
Scusa se insisto, ma il significato di ripeti, fine se, else, conta te l'abbiamo gia' spiegato e non c'e' molto altro da sapere, davvero. Conta, come già detto e' una variabile, non un istruzione, e se sai cosa è una variabile non hai bisogno di sapere altro, è tutto lì; idem per i vettori e le matrici che altro non sono che delle variabili multiple o variabili bidimensionali o... variabili con un indice (non so come spiegarlo

L'istruzione ripeti poi e' veramente semplice: serve per ripetere porzioni di codice n volte; ma quante volte? Dipende dalla condizione che imposti, può essere che ti serva ripetere il tutto per un numero finito di volte ("i da 1 a 10"), oppure finchè non si verifica una certa condizione ("x minore di 10. Quando x e' uguale a 10 o maggiore, il ciclo si interrompe"). Di ripeti poi ce ne sono di due tipi, uno per i cicli finiti (for i=1 to 10) e uno per i cicli condizionali (while x<10 do); dopo quello che ho scritto, secondo te come vanno interpretati?
ho letto tutto molto attentamente, ma su questo es

ripeto i da 1 a 3, parto da 1; il primo valore di y è 10; la variabile a da dove viene fuori? io ho solo n e b nei dati del prob.
Ho studiato tutte le dispense, ma è molto difficile svolgere es cm questi. Anzi, grazie a voi almeno ho risolto il primo:)

ripeto i da 1 a 3, parto da 1; il primo valore di y è 10; la variabile a da dove viene fuori? io ho solo n e b nei dati del prob.
Ho studiato tutte le dispense, ma è molto difficile svolgere es cm questi. Anzi, grazie a voi almeno ho risolto il primo:)
a, come i, e' una variabile di "comodo" per fa funzionare il secondo ripeti, e non mi sembra che tu abbia avuto problemi ad usarla seppure non sia indicata nell'esercizio 
Il secondo ripeti è anche molto interessante in quanto il limite superiore di a viene definito dal valore di y, e questo ciclo non fa altro che sommare 1 a b tante volte quanto indicato nella condizione del ciclo (che valore avrà b al termine del secondo ciclo??).

Il secondo ripeti è anche molto interessante in quanto il limite superiore di a viene definito dal valore di y, e questo ciclo non fa altro che sommare 1 a b tante volte quanto indicato nella condizione del ciclo (che valore avrà b al termine del secondo ciclo??).
i=1 --> y=10
i=2 --> y=9
i=3 --> y=13
Sui dati ke ho scritto sn sicuro, ma m kiedo: a va incrementato da 1 (+1) fino a 10 nel primo ciclo? Come faccio ad ottenere b (nel primo ciclo è b+10 e al secondo b+9?), e soprattutto, xkè alla fine specifica ke a b assegna 1?
ps nn ho problemi sugli indici, ho ben capito ke i è la posizione d b ad ogni ciclo nel vettore;)
i=2 --> y=9
i=3 --> y=13
Sui dati ke ho scritto sn sicuro, ma m kiedo: a va incrementato da 1 (+1) fino a 10 nel primo ciclo? Come faccio ad ottenere b (nel primo ciclo è b+10 e al secondo b+9?), e soprattutto, xkè alla fine specifica ke a b assegna 1?
ps nn ho problemi sugli indici, ho ben capito ke i è la posizione d b ad ogni ciclo nel vettore;)
quindi nel primo ciclo $b=11$, nel secondo $b=10$ e nel terzo $b=14$ (confermi?)
b deve essere rinizializzato a 1 ogni volta perche'..... dai pensaci, se dopo la fine del secondo ripeti, dove ottieni $b=11$, esegui il ciclo successivo (dove sono ovviamente cambiati gli indici) senza porre $b=1$, cosa otterresti? Che valore assumerebbe b? E nel terzo ciclo? Considera che ogni volta sommi 1 a b....
b deve essere rinizializzato a 1 ogni volta perche'..... dai pensaci, se dopo la fine del secondo ripeti, dove ottieni $b=11$, esegui il ciclo successivo (dove sono ovviamente cambiati gli indici) senza porre $b=1$, cosa otterresti? Che valore assumerebbe b? E nel terzo ciclo? Considera che ogni volta sommi 1 a b....