Istituto Tecnico Industriale "Enrico Fermi"

Help On Chat

[Ritorna all'elenco sessioni]

Chat del 13 Dicembre 2018 dalle 18:05:33 alle 18:45:08

Stefano Salvi
Eccomi. Se volete incominciare con le doamnde...
Riccardo PENNACCHIO
Buonasera prof
Larissa BERNARDI
Buonasera
Jaspreet SINGH
Buona sera
Daniele SCARDOVELLI
Buonasera
Riccardo PENNACCHIO
Volevo chiederle se nelle espressioni logiche ci saranno anche le porte xand e xor?
Stefano Salvi
Buonasera a tutti!
Cristian ROSSINI
Buonasera!
Stefano Salvi
Pennacchio: Nelle espressioni non ci sono porte.
Riccardo PENNACCHIO
Ok
Stefano Salvi
Pennacchio: se studi le porte logiche per fare le espressioni logiche, il giro tende a diventare lungo.
Daniele SCARDOVELLI
Ma le espressioni logiche non sono vero e falso con le tab di and e or
Larissa BERNARDI
prof io non ho capito cosa devo mettere tra le parentesi tonde quando faccio il prototipo di una funzione
Jaspreet SINGH
.
Lorenzo BISSOLI
Predecremento: a=0 b=1 a=++1 a=1 b=2 Postdecremento a=b++ a=0 b=2 giusto?
Jaspreet SINGH
invece la getstring l\'aveva spiegata?
Stefano Salvi
Scardovelli: le espressioni logiche valutano in "vero" (diverso da 0) e "falso" (uguale a 0) ed usano and (&&) or (||) e not (!) ma sono in C ed hanno parecchia altra roba (tipo i confronti ed i tipi di variabile da usare).
Lara TANFOGLIO
In una funzione di array ci posso passare il primo valore, e quelli successivi come faccio ad usarli all€interno della funzione?
Stefano Salvi
Bernardi: devi mettere le stesse cose che quando fai la funzione vera, quindi l\'elenco delle dichiarazioni dei parametri formali con i rispettivi tipi.
Riccardo PENNACCHIO
Prof non ci saranno vettori a 3 dimensioni nella verifica, giusto?
Lorenzo BISSOLI
Prof se seve riempire solamente i primi due elementi di un arrey come devo fare?
Larissa BERNARDI
okk grazie
Stefano Salvi
Tanfoglio: se la funzione è "di array", allora le devo passare L\'ARRAY, non il primo valore. Se ho l\'arrray inr a[10] e la funzione f(int g[]) passerò \'INDIRIZZO dell\'array "f(a)", non il primo valore dell\'array "f(a[0])\'"
Bissoli: ciclo da 0 a 1 oppure assegnamento a ll\'elemento 0 e poi all\'elemento 1. Dipende da che devi fare.
Lara TANFOGLIO
okk grazie
Daniele SCARDOVELLI
Ok grazie
Larissa BERNARDI
che dimensione ha una variabile in C, la quale contiene un valore booleano?
Francesco GROSSI
prof come si fa a passare da un carattere in maiuscolo a un in minuscolo e viceversa?
Stefano Salvi
Bissoli: puoi fare int a[10]; int i; - for (i = 0; i < 2; i++) { a[i]=i; - oppure a[0]=0; a[1]=1.
Lara TANFOGLIO
quindi se facessi int funzione(int array[], dimensione) gli sto passando l€indirizzo dell€array con tutti i suoi elementi?
int dimensione*
Stefano Salvi
Grossi: sapendo che nella variabile ci sta il codice ASCII del carattere, mettiamo che la variabile int x contenga il tuo carattere (del quale devi essere certo che sia ad esempio maiuscolo), fai x += \'a\' - \'A\'. Se invece è sicuramente minuscolo (perché lo hai controllato con un if ed una condizione adeguata) allroa farai x += \'A\' - \'a\';
Tanfoglio: di fatto si, passi l\'indirizzo del primo e la funzione è in grado di raggiungere tutti gli altri, calcolandosene l\'indirizzo.
Francesco GROSSI
per il controllo devo vedere se x>\'z\' && x<\'a\' ?
Stefano Salvi
Tanfolgio: correttamente fai sapere alla funzione quanti sono gli ele,menti in quanto altrimenti non lo saprebbe e non saprebbe quando fermarsi.
Jaspreet SINGH
come si fa a trasformare un numero in carattere(char) a numero in int?
Stefano Salvi
Grossi: magari x >= \'a\' && x <= \'z\'...
Francesco GROSSI
a ok
Larissa BERNARDI
che dimensione ha una variabile in C, la quale contiene un valore booleano?
Francesco GROSSI
grazie prof
Stefano Salvi
Singh: dato che le cifre sono "tuttte in fila", se ad esempio int x=\'8\', se faccio x -= \'0\', in x mi resta il numero 8, al posto del carattere ascii \'8\'.
Larissa BERNARDI
prof non ho capito la differenza tra parametri formali e attuali?
Stefano Salvi
Bernardi: non esiste un tipo specifico per i valori booleani, ma tutti i tipi interi possono essere usati. Per default viene usato "int" (con la dimensione che dipende dal processore/sistema), ma posso usare 8, 16, 32, 64 o 128 bit (char, short, long e long long).
Larissa BERNARDI
ok grazie
Daniele SCARDOVELLI
Come valori booleani si intende anche gli unsigned?b
Stefano Salvi
Bernardi: se io dichiaro la funzione int f(int formale), poi la chiamo con int main () { f(12); return 0; }, "formale" è il parametro (guarda caso) formale mentre 12 è il parametor attuale.
Scardovelli: certamente, anche una variabile unsigned può contenere un valore booleano.
Daniele SCARDOVELLI
Grazie
Lara TANFOGLIO
si può usare il libro durante la verifica?
Jaspreet SINGH
quante domande di teoria ci saranno?
Stefano Salvi
Tanfoglio: libro, appunti, stampe da Internet, la stampata di questa chat... tutto fuorché le comunicazioni ed i relativi dispositivi.
Lara TANFOGLIO
ok perfetto grazie mille
Larissa BERNARDI
io non ho capito a cosa serve \'\0\' ?
Stefano Salvi
Bernardi: \'\0\' è il codice ascii (valore decimale 0) è il codice che viene utilizzato per indicare il termine di una stringa, quindi viene posto nell\'array di char dopo tutti i caratteri "veri"
Larissa BERNARDI
ah okok
Stefano Salvi
Avete provato un po\' con il computer?
Francesco GROSSI
si
Lara TANFOGLIO
io ci ho provato ma con scarsi risultati
Larissa BERNARDI
si ma abbiamo qualche difficoltà con le matrici
Jaspreet SINGH
il put string cosa fa?
Lorenzo BISSOLI
Anch€io ho provato
Stefano Salvi
Avete verificato cosa fa il compilatore quando fate un predecremento o un postdecremento? cosa fa quando fate una convesione implicita da int a double?
Lara TANFOGLIO
mi dava degli errori che non capisco, perchè ho provato a inserire in un array di char dei numeri e questo mi comprometteva tutto il resto del programma
Stefano Salvi
Singh: la putstring("La vita è bella") stampa la stringa "la vita è bella" sul terminale (come la printf, ma senza usare la stringa di formato, quindi è più semplice).
Jaspreet SINGH
ok grz
Daniele SCARDOVELLI
non ho capito ciò che ha detto prima sul compilatore
Lara TANFOGLIO
quindi faccio a meno della printf con il putstring?
Stefano Salvi
Tanfoglio: in un array di char puoi mettere dei numeri, ma poi se stamo l\'array come stringa, probabilmente fa guai (se non ti sei preoccupata di inserire un numero = 0) e se metti troppi valori, ancira crei problemi.
Lorenzo BISSOLI
a=++b*
Francesco GROSSI
ma getstring è gets?
Stefano Salvi
Alla prossima lezione di lòaboratorio, fatemi vedere i programmi che non vanno, che capiamo il problema.
Larissa BERNARDI
quindi se faccio a+=++b, prima faccio b=b+1, poi faccio a=a+b giusto?
Stefano Salvi
Grossi: la gets(char s[]) l\'avevo spiegata: legge una stringa da tastiera. È però preferibile la fgets(char s[], int max, stdin) (stdin va scritto proprio) nella quale indico il parametro "max" che evita che vengano letti troppi caratteri e vadano a finire fuori dellìarray s.
Bernardi: esatto. E se invece fai a += b++?
Larissa BERNARDI
mentre se faccio a+=b++, prima faccio a=a+b, poi faccio b=b+1. giusto?
Stefano Salvi
Bernardi: esatto!
Larissa BERNARDI
okks
Francesco GROSSI
si intendevo dal punto di vista di prgrammazione : la getstringa è la gets nel programma
comunque un ripasso al comando fa bene uguale grazie prof
Lara TANFOGLIO
per stampare una stringa di array cosa devo fare? stampare un carattere alla volta giusto? finchè non arrivo a \0?
€؜0€*
Stefano Salvi
Tanfoglio: per stampare una stringa (che è sempre un array di char, terminato con \'\0\'), puoi certamente fare un loop sui caratteri e stamerli ujnao ad uno fino al \'10\' escluso, altrimenti puts o printf ("%s.."
Tanfoglio... un loop sui caratteri e stamparli uno ad uno fino al \'\0\'
Che ne dite? possiamo chiudere (sono già quasi 40 miunuti...)
Lara TANFOGLIO
quindi invece di fare tutto il ciclo per stampare ogni singolo carattere faccio direttamente printif(“%s”, ) e cosa mettondopo la virgola?
Stefano Salvi
Tanfolgio, la stringa (array di caratteri...) da stampare. Anche dopo la puts(...
Lara TANFOGLIO
okok grazie
Stefano Salvi
Tanfoglio: printf non printif
Larissa BERNARDI
si prevedono dei 4 prof ahahhahaha, quindi la faccia facile per pietà nostra ahah
Lara TANFOGLIO
hahah si mi scusi
Stefano Salvi
Ok, direi che possiamo salutarci.
Lara TANFOGLIO
Bernardi: concordo
Stefano Salvi
Quindi buona cena, buon riposo e in bocca al lupo.

[Ritorna all'elenco sessioni]