Leggi il Topic


Indice del forumMotobarForum Internet & Hi-Tech

   

Pagina 1 di 1
 
Esercizio in Visul Basic [Aiuto!]
2949581
2949581 Inviato: 15 Nov 2007 20:23
Oggetto: Esercizio in Visul Basic [Aiuto!]
 

Oh geni dell'informatica e non solo, aiutereste un misero studente indaffarato nel fare il suo esercizio di informatica?

E' per domani..quindi mi devo sbrigare icon_confused.gif

Testo:

Vogliamo acquisire le temperature nelle città d'Italia. Si termina quando trova una temperatura pari a 99° (è un pretesto per l'esecutore per far terminare il programma). Fare la stessa cosa x le temeprature della Francia. Alla fine dire se la tem. + bassa è stata rilevata in Francia o Italia.

A chi me lo fa gli offro una cena, ovviamente virtuale icon_lol.gif
 
2949793
2949793 Inviato: 15 Nov 2007 20:40
 

scusami ma in che linguaggio....vuoi un algoritmo o il codice programma..
poi cerca di essere più chiaro...ad esempio le temperature vengono inserite dall'utente???
 
2949902
2949902 Inviato: 15 Nov 2007 20:49
 

ok ho visto ora che è in visual basic...non ti posso aiutare se era in C non c'erano problemi....
 
2950230
2950230 Inviato: 15 Nov 2007 21:15
 

fra_ct ha scritto:
ok ho visto ora che è in visual basic...non ti posso aiutare se era in C non c'erano problemi....


Peccato, comunque voglio ovviamente che il programma mi chieda di inserire le temperature e tutto il tram - tram dell'esercizio.

Nessuna anima pia che mi aiuta?
 
2951290
2951290 Inviato: 15 Nov 2007 22:44
 

Potrei fartelo io ma ora mi annoio...
 
2953224
2953224 Inviato: 16 Nov 2007 10:53
 

XVincentX ha scritto:
Potrei fartelo io ma ora mi annoio...


posso aggiungere che che è mortificante ??

in bocca al lupo,
d.
 
2954215
2954215 Inviato: 16 Nov 2007 12:39
 

fra_ct ha scritto:
ok ho visto ora che è in visual basic...non ti posso aiutare se era in C non c'erano problemi....

se vuoi te lo posso kiedere io un aiuto per fare un programmino in c.
In pratica ho un algoritmo ke mi lavora a 32 bit, dovrei portarlo a 64. ma ho problemi con la curva dell'algoritmo.Pensi di potermi aiutare ?
 
2954495
2954495 Inviato: 16 Nov 2007 13:21
 

FANTA ha scritto:
se vuoi te lo posso kiedere io un aiuto per fare un programmino in c.
In pratica ho un algoritmo ke mi lavora a 32 bit, dovrei portarlo a 64. ma ho problemi con la curva dell'algoritmo.Pensi di potermi aiutare ?


Lo sai, sì, che non vuol dire nulla quello che hai detto? icon_lol.gif

Visto che questa cosa non ha nulla a che vedere con il visual basic o con il programma di messi91... perché non apri un altro topic e ti spieghi un po' più in dettaglio, così magari qualcuno ti da una mano.
 
2954817
2954817 Inviato: 16 Nov 2007 14:11
 

Purtroppo di visual basic non so quasi niente, ma ti posso comunque aiutare sulla logica del programma, a te poi tradurre tutto nella sintassi corretta.

Crei due array, francia e italia, di numeri interi, non so quanto grossi, tipo una 50ina di celle.. Apri un ciclo for e per ogni ciclo chiedi all'utente di inserire una temperatura nell'array italia, ogni inserimento controlli il dato e se è 99 termini l'inserimento e riempi le rimanenti celle con 99. Idem per riempire l'array francia.
A questo punto hai bisogno di definire 2 variabili: minIta, minFra, sempre intere inizializzate a 99.
Riapri un ciclo for e scorry l'array italia copiando la temperatura in minIta se minIta è minore della temperatura in quella cella dell'array. Idem per l'array francia.
Alla fine non ti resta altro da fare che controllare minIta e minFra.

La parte in grassetto è sicuramente la più difficile, se non riesci a farla così puoi inizializzare gli array a 100 e terminare l'inserimento quando becchi il 99. Ti serve fare così altrimenti i valori nulli negli array ti possono influenzare le temperature minime.

Spero di essere stato utile...
 
2954859
2954859 Inviato: 16 Nov 2007 14:15
 

Madò, grazie a tutti raga!

Peccato che avessi oggi informatica ed ho già corretto l'esercizio. L'avevo detto all'inzio del topic che era x oggi comunque se volete per curiosità ve lo posto anche il risultato icon_lol.gif

La prossima volta ve lo comunicherò un paio di giorni prima..almeno avete un pò di tempo icon_wink.gif

comunque Urano, c'hai preso quasi per tutto l'esercizio, bravo!

Alla prossima..
 
2954931
2954931 Inviato: 16 Nov 2007 14:24
 

urano88 ha scritto:
La parte in grassetto è sicuramente la più difficile, se non riesci a farla così puoi inizializzare gli array a 100 e terminare l'inserimento quando becchi il 99. Ti serve fare così altrimenti i valori nulli negli array ti possono influenzare le temperature minime.
Spero di essere stato utile...


Puoi sempre interrompere il ciclo quando incontri il 99, il che è anche più efficiente in termini di cicli. Non esiste il break in vbasic? icon_lol.gif

Codice:
x=0;
while (tempIta[x] <> 99)
{
    if (tempIta[x] < minIta)
        minIta = tempIta[x];
    x = x+1;
}


Questo è pseudocodice, né C né altro, ma in realtà il linguaggio di programmazione non ha alcuna importanza.
 
2955752
2955752 Inviato: 16 Nov 2007 15:44
 

stamattina ho fatto il compito di visual basic... e non ho fatto un cacchio...
 
2955902
2955902 Inviato: 16 Nov 2007 16:00
 

mah... io non vedo nemmeno l'utilita' degli array...
semplicemente un paio di variabili... con cui confrontare il valore immesso con il valore max riscontrato fino a quel momento... piu' una variabile in cui scrivere lo stato associato al valore max..
ad esagerare una cosa del genere:
Non e' VB, ma il concetto dovrebbe essere chiaro..

Codice:
#!bin/bash
MAXI=0
MAXF=0
MAX=0
echo -e "Stato: \c "
read DOVE
while ! [ -z "$DOVE" ]; do
        echo  -e "Gradi: \c "
        read TEMP
        if [ $TEMP -ne 99 ]; then
                case $DOVE in
                        "F"|"f")
                                [ $TEMP -gt $MAXF ] && MAXF=$TEMP
                        ;;
                        "I"|"i")
                                [ $TEMP -gt $MAXI ] && MAXI=$TEMP
                        ;;
                esac
                if [ $TEMP -gt $MAX ]; then
                        MAXW=$DOVE
                        MAX=$TEMP
                fi
                echo -e "Stato: \c "
                read DOVE
        else
                break
        fi
done
echo "Max Francia: "$MAXF
echo "Max Italia: "$MAXI
echo "Max assoluta: $MAX ($MAXW)"


Manca tutta la parte di controllo (cosa fare se lo stato e' diverso da F o I, che il valore immesso sia numerico, etc...), ma il succo e' quello
Inoltre, oltre ad uscire per TEMP=99 esce anche immettendo un valore nullo per DOVE.
un esempio d'uso:
Codice:
. ./temp
Stato: i
Gradi: 5
Stato: f
Gradi: 3
Stato: f
Gradi: 8
Stato: i
Gradi: 11
Stato:
Max Francia: 8
Max Italia: 11
Max assoluta: 11 (i)
 
2955990
2955990 Inviato: 16 Nov 2007 16:12
 

messi91 ha scritto:
La prossima volta ve lo comunicherò un paio di giorni prima..almeno avete un pò di tempo icon_wink.gif

comunque Urano, c'hai preso quasi per tutto l'esercizio, bravo!

Alla prossima..

Più che altro serve che un po' di tempo per notarlo, io da ieri pomeriggio non mi sono più connesso... appena ho visto il tuo pm l'ho risolto subito senza nemmeno pensarci troppo... sono ancora esercizi abbastanza corti.

@Calimar -> l'ho fatto in fretta e non sono stato a ottimizzare il codice oltretutto a volte preferisco fare in modo che la soluzione sia la più comprensibile e non la migliore... il tuo appunto è correttissimo.

@42 -> eh c'hai ragione... però in questo modo la soluzione si "complica" ancora in quanto mescoli la fase d'inserimento con quella esecutiva e riduci il problema al caso specifico dell'inserimento diretto perdendo la logica della lettura dal database icon_rolleyes.gif
 
2956091
2956091 Inviato: 16 Nov 2007 16:22
 

urano88 ha scritto:
@42 -> eh c'hai ragione... però in questo modo la soluzione si "complica" ancora in quanto mescoli la fase d'inserimento con quella esecutiva e riduci il problema al caso specifico dell'inserimento diretto perdendo la logica della lettura dal database icon_rolleyes.gif

ohe'... qui si parla di acquisire... mica di memorizzare...
Citazione:

Vogliamo acquisire le temperature nelle città d'Italia.
Fare la stessa cosa x le temeprature della Francia.
Alla fine dire se la tem. + bassa è stata rilevata in Francia o Italia.

da buon consulente fornisco solo cio' che mi e' stato ESPLICITAMENTE richiesto... (a gia' ci ho messo "a gratis" la massima nazionale) icon_lol.gif icon_lol.gif icon_lol.gif, per il resto apriamo un nuovo contrattino... icon_cool.gif
fatturina a 30 gg fmdf eusa_whistle.gif ?
 
2956173
2956173 Inviato: 16 Nov 2007 16:29
 

eheh c'hai di nuovo ragione eusa_wall.gif si vede che non sono un buon consulente, eh? Spargo conoscenza aggratis e cercando di farlo nel modo più formativo possibile, morirò povero e affamato icon_lol.gif icon_lol.gif icon_lol.gif che ci posso fare... sono fatto così icon_wink.gif
 
2956671
2956671 Inviato: 16 Nov 2007 17:12
 

Un consulente dispensa conoscenza non richiesta a pagamento.

Di fatto se ti chiedono hello world, è solo un vantaggio farlo in php/mysql su windows, con un apache modificato per fare da application server di un javabean che contatterà mysql chiamando una procedura C attraverso corba, la quale leggerà da una tabella l'indirizzo del DB su cui andare a trovare la frase da stampare.
Così gli vendi tutta sta roba, e ci metti sopra il contratto di manutenziuone.

42, come me quando sono in giornata buona e ci arrivo icon_wink.gif, è più adatto ai bei vecchi tempi quando chi ti paga e la scrivania su cui sei seduto appartengono alla stessa azienda icon_wink.gif, e quando fare un buon lavoro serviva :S
 
2959776
2959776 Inviato: 16 Nov 2007 22:10
 

Raga, vedo con piacere è nata una "discussione" costruttiva .

Potrò contare su di voi le prossime volte, sempre che non ci sia una clausola contrattuale dietro icon_lol.gif
 
Mostra prima i messaggi di:





Pagina 1 di 1

Non puoi inserire nuovi Topic
Non puoi rispondere ai Topic
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi
 
Indice del forumMotobarForum Internet & Hi-Tech

Forums ©