Aiutatemi per favore e urgente....
per favore aiutatemi in informatica devo codificare quest'esercizio in visual basic con i vettori paralleli:
Di alcune città di una regione italiana vengono memorizzate le seguenti informazioni:
- il nome della città
- la temperatura massima registrata nella giornata
- la temperatura minima registrata nella giornata
E fornire in output:
a) la città più fredda
b) la città più calda
c) la città che ha avuto la maggiore escursione termica.
Di alcune città di una regione italiana vengono memorizzate le seguenti informazioni:
- il nome della città
- la temperatura massima registrata nella giornata
- la temperatura minima registrata nella giornata
E fornire in output:
a) la città più fredda
b) la città più calda
c) la città che ha avuto la maggiore escursione termica.
Risposte
Ok...
... attenderò :hi
... attenderò :hi
Max 2433/BO ...te lo dirò mercoledi che cosi ho informatica a scuola...:)
scusatemi nn lo farò più!!!!
valerio64, sei pregato di non intervenire se non sei in grado di contribuire alle necessità dell'utente. Ti ricordo che dare disposte inutili è contro il regolamento.
il virtual basic dovrebbe essere un linguaggio di programmazione, giusto???
... ok fammi sapere se funzione, perchè questa notte :lol mi è venuto un dubbio: forse dopo il comando ELSE invece di i=p sarebbe più corretto mettere i=i+1...
... comunque fammi sapere.
:hi
... comunque fammi sapere.
:hi
mm qualcosa ho capito....ora mi metto a scriverlo in vb...:) grazie
Allora le variabili i, p sono in pratica i puntatori utilizzati per estrarre i dati dagli array, avrei anche potuto chiamare indice1 e indice2 o puntatore1 e puntatore2
Per cui quando scrivo
a=temp_min(i)
b=temp_min(p)
si intende che
la variabile a conterrà il valore presente nell'array temp_min alla posizione i,
e la variabile b conterrà il valore presente nell'array temp_min alla posizione p
Quindi se, ad esempio i=2 e p=3, considerando gli array che ti ho proposto all'inizio:
a=temp_min(2)=1
b=temp_min(3)=10
Nota: io ho considerato che gli elementi si iniziano a conteggiare da sinistra verso destra e a partire da un indice pari a 0, di norma è così.
Quando, invece, scrivo:
d1 = temp_max(i) - temp_min(i)
d2 = temp_max(p) - temp_min(p)
la variabile d1 contiene la differenza di temperatura calcolata utilizzando il valore presente nell'array temp_max puntato dall'indice i e il valore presente nella variabile temp_min puntato dall'indice i
e, parimenti, la variabile d2 contiene la differenza di temperatura calcolata utilizzando il valore presente nell'array temp_max puntato dall'indice p e il valore presente nella variabile temp_min puntato dall'indice p
Per cui, se ad esempio, consideriamo sempre i=2 e p=2 e gli array che ti ho postato, avremo:
d1 = temp_max(2) - temp_min(2) = 5 - 1 = 4
d2 = temp_max(3) - temp_min(3) = 25 - 10 = 5
Ecco qua, se hai altri dubbi chiedi pure.
Ti volevo ricordare che la notazione di scrittura che ho utilizzato non è necessariamente uguale a qualle di vb , che non conosco, ma dovresti essere in grado, visto gli esempi, a tradurla nella sua corretta sintassi.
:hi
Per cui quando scrivo
a=temp_min(i)
b=temp_min(p)
si intende che
la variabile a conterrà il valore presente nell'array temp_min alla posizione i,
e la variabile b conterrà il valore presente nell'array temp_min alla posizione p
Quindi se, ad esempio i=2 e p=3, considerando gli array che ti ho proposto all'inizio:
a=temp_min(2)=1
b=temp_min(3)=10
Nota: io ho considerato che gli elementi si iniziano a conteggiare da sinistra verso destra e a partire da un indice pari a 0, di norma è così.
Quando, invece, scrivo:
d1 = temp_max(i) - temp_min(i)
d2 = temp_max(p) - temp_min(p)
la variabile d1 contiene la differenza di temperatura calcolata utilizzando il valore presente nell'array temp_max puntato dall'indice i e il valore presente nella variabile temp_min puntato dall'indice i
e, parimenti, la variabile d2 contiene la differenza di temperatura calcolata utilizzando il valore presente nell'array temp_max puntato dall'indice p e il valore presente nella variabile temp_min puntato dall'indice p
Per cui, se ad esempio, consideriamo sempre i=2 e p=2 e gli array che ti ho postato, avremo:
d1 = temp_max(2) - temp_min(2) = 5 - 1 = 4
d2 = temp_max(3) - temp_min(3) = 25 - 10 = 5
Ecco qua, se hai altri dubbi chiedi pure.
Ti volevo ricordare che la notazione di scrittura che ho utilizzato non è necessariamente uguale a qualle di vb , che non conosco, ma dovresti essere in grado, visto gli esempi, a tradurla nella sua corretta sintassi.
:hi
grazie mille...non riesco a capire per le variabili ...p...d1---d2 non capisco,può spiegarmeli con altri nomi...:(
Aggiunto 6 minuti più tardi:
non capisco neanche quando faccio questo....
a=temp_min(i)
b=temp_min(p)
Aggiunto 6 minuti più tardi:
non capisco neanche quando faccio questo....
a=temp_min(i)
b=temp_min(p)
Non conosco propriamente il visual basic (non potrei nemmeno utilizzarlo perchè lavoro con linux ;) ), comunque con le mie basi ti posso indicare dei semplici algoritmi in basic che penso che tu possa tradurre semplicemente in vb dal momento che si tratta di istruzioni basilari.
Allora se ho ben compreso il problema è il seguente:
abbiamo tre array contenenti, rispettivamente, i nomi delle città, i valori delle rispettive temperature minime e i valori delle rispettive temperature massime.
Ovviamente i tre array sono in relazione tra loro, nel senso che l'indice dell'array contenenti i nomi delle città e corrispondente a quello contenente le temperature in modo da avere un relazione univoca.
Supponiamo, quindi che i tre array siano i seguenti:
nome_città$ [Roma, Bologna, Milano, Napoli]
temp_min [5,3,1,10]
temp_max [15,10,5,25]
La routine per trovare la città più fredda potrebbe essere la seguente:
variabili utilizzate
i, p ; indici di scansione array
a, b ; contenitori per confronto
:inizio
i=0
FOR p (1 TO 3) ; dopo il TO va inidcata la lunghezza dell'array (3 perchè si parte a contare da 0)
a=temp_min(i)
b=temp_min(p)
IF a nella struttura IF THEN ELSE, puoi costruirti la routine per trovare la temperatura massima, analizzando, ovviamente, l'array temp_max.
... tra un attimo ti posto la routine per l'ultima domanda
Aggiunto 10 minuti più tardi:
... rieccomi, questa dovrebbe essere la routine per il confronto dell'escursione termica:
variabili utilizzate
i,p ; indici di scansione array
d1, d2; contenitori differenze di temperatura
:inizio
i=0
FOR p (1 TO 3)
d1 = temp_max(i) - temp_min(i)
d2 = temp_max(p) - temp_min(p)
IF d1>d2 THEN
i=i
ELSE
i=p
END IF
NEXT
Come vedi è molto simili alla precedente, cambino solo le operazioni da eseguire sui dati degli array che, da un semplice confronto, diventa un confronto di differenze di valori.
Anche in questo caso, alla fine del ciclo FOR NEXT la variabile i punta alla città con maggior escursione termica.
... spero di esserti stato un po' d'aiuto, con le mie scarse conoscenze di programmazione.
:hi
Massimiliano
Allora se ho ben compreso il problema è il seguente:
abbiamo tre array contenenti, rispettivamente, i nomi delle città, i valori delle rispettive temperature minime e i valori delle rispettive temperature massime.
Ovviamente i tre array sono in relazione tra loro, nel senso che l'indice dell'array contenenti i nomi delle città e corrispondente a quello contenente le temperature in modo da avere un relazione univoca.
Supponiamo, quindi che i tre array siano i seguenti:
nome_città$ [Roma, Bologna, Milano, Napoli]
temp_min [5,3,1,10]
temp_max [15,10,5,25]
La routine per trovare la città più fredda potrebbe essere la seguente:
variabili utilizzate
i, p ; indici di scansione array
a, b ; contenitori per confronto
:inizio
i=0
FOR p (1 TO 3) ; dopo il TO va inidcata la lunghezza dell'array (3 perchè si parte a contare da 0)
a=temp_min(i)
b=temp_min(p)
IF a nella struttura IF THEN ELSE, puoi costruirti la routine per trovare la temperatura massima, analizzando, ovviamente, l'array temp_max.
... tra un attimo ti posto la routine per l'ultima domanda
Aggiunto 10 minuti più tardi:
... rieccomi, questa dovrebbe essere la routine per il confronto dell'escursione termica:
variabili utilizzate
i,p ; indici di scansione array
d1, d2; contenitori differenze di temperatura
:inizio
i=0
FOR p (1 TO 3)
d1 = temp_max(i) - temp_min(i)
d2 = temp_max(p) - temp_min(p)
IF d1>d2 THEN
i=i
ELSE
i=p
END IF
NEXT
Come vedi è molto simili alla precedente, cambino solo le operazioni da eseguire sui dati degli array che, da un semplice confronto, diventa un confronto di differenze di valori.
Anche in questo caso, alla fine del ciclo FOR NEXT la variabile i punta alla città con maggior escursione termica.
... spero di esserti stato un po' d'aiuto, con le mie scarse conoscenze di programmazione.
:hi
Massimiliano