Istituto Tecnico Industriale "Enrico Fermi"

Help On Chat

[Ritorna all'elenco sessioni]

Chat del 23 Febbraio 2018 dalle 19:02:05 alle 19:46:02

Stefano Salvi
passati, non apssati...
Buona sera a tutti.
Se hai domande, comincia!
Dove si sono perdi gli altri?
Federico DI GIACOMO
prof non ho capito esattamente che cos\' è un operatore ternario
Andrea POTITO
Buonsera
Riccardo MIRANDOLA
Buonasera
Luca TRAZZI
Buonasera
Serghej COCCONI
buona sera
Riccardo MIRANDOLA
Prof perché se faccio ad esempio char a[15] gets (a) mi fa stampare anche +di 15 elementi?
Stefano Salvi
Di Giacomo: l\' "operatore ternario" è un operatore che, invece ci avere un solo operando (unaroio, come il cambio di segno) o due (come ad esempio la somma), ne ha TRE. L\'operatore ternario è quelloc he assume il valore del secondo o del terzo operando a seconda che il primo operando sia vero o falso. Potremmo descriverlo così: <condizione> ? <operando epr vero> : <operando per falso>.
Luca TRAZZI
In che senso vero o falso
?
Serghej COCCONI
è l\' esempio che ci ha fatto in classe quindi, return(a>b) ? a:b?
Andrea POTITO
Ma dopo aver scritto l\'operatore ternario, come facciamo a scrivere l\'azione che deve fare se è vero o quella che deve fare se è falso?
Stefano Salvi
Mirandola: la gets non ti richiede il numero di cartteri del vettore passato come parametro, quindi "va sulla fiducia", non essendoci alcun metodo in C per scoprire la dimensione di un vettore dal suo indirizzo. Naturalmente se l\'utente scrive troppi caratteri, fuoriescono dla vettore apssato creando grossi guai. Per questo si suggerisce di utilizzare la fgets.
Sebastiano GASPARINI
Buonasera prof, cosa intende per strutture di programmazione?
Stefano Salvi
Trazzi:il primo operando viene valutato come condizione, quindi può essere vera o falsa.
Riccardo MIRANDOLA
Grazie. Può per favore spiegarmi cosa cambia da char e const Char?
Stefano Salvi
Cocconi: si, in classe ho fatto proprio quell\'esempio per l\'operatore ternario.
Serghej COCCONI
ok grazie !
Stefano Salvi
Potito: l\'operatore ternario è un OPERATORE, quindi ha un VALORE, non fa un\'azione (non è un IF).
Andrea POTITO
e a cosa serve allora?
Stefano Salvi
Gasparini S: le strutture di programmazione sono l\'IF, il FOR, il WHILE, il DO-WHILE e lo SWITCH-CASE (che dobbiamo ancora fare).
Sebastiano GASPARINI
ok grazie mille
Stefano Salvi
Mirandola: "const" è un attributo da associare al tipo. In questo caso lo associo a (char *), non a (char) ed indica che i caratteri del vettore NON POSSONO ESSERE MODIFICATI, difatti una stringa tra apici è una COSTANTE...
Federico DI GIACOMO
può fare un esempio di funzione con operatore ternario? non ho capito in che contesto andrebbe utilizzato
Riccardo MIRANDOLA
Ok, Grazie prof
Stefano Salvi
POTITO: posso ad esempio utilizzarlo per assegnare ad una variabile un valore diverso a seconda di una condizione senza usare un IF.
Luca TRAZZI
Volevo sapere su cosa potrebbero capitare domande teoriche?
Andrea POTITO
Potrebbe fare un esempio?
Stefano Salvi
DI Giacomo: l\'operatore ternario, come tutti gli operatori, si usa nelle ESPRESSIONI. Posso usarlo ovunque ci sia un\'epressione.
Riccardo MIRANDOLA
Domani chiede anche quel poco che abbiamo fatto oggi sui puntatori o ce lo risparmia?
Stefano Salvi
TRAZZI: mi pare da nessuna parte... Ma non ne sono ceerto.
Serghej COCCONI
quale può essere una tipologia di esercizio riguardante le funzioni e macro su stringhe e caratteri?
Filippo BELLANZA
quindi prof in verifica non ci saranno domande teoriche ma solo esercizi?
Stefano Salvi
Mirandola: direi che domani ci saranno parametri apssati per riferimento. Non dovrebbero essere una completa novità, già prima di oggi.
Bellanza (forse): un esempio di uso dell\'operatore ternario protrebbe essere: int a = 3; int b = 4; printf ("Il massimo tra %d e %d è %d\n", a, b, (a>b) ? a : b); - ho usato l\'operatore ternario nel calcolo del quarto parametro della printf.
Riccardo MIRANDOLA
Perfetto Grazie
Stefano Salvi
Non rispondo a domande sui tipi di esercizio o domnada che farò!
Serghej COCCONI
pardon
Andrea POTITO
Ero stato io a chiederlo, grazie mille prof
Dominique DONNICI
Ah quindi vanno sempre nel printf i parametri dell\'operatore ternario?
Stefano Salvi
DONICI: altro esempio: int a = 22; int b= 0; b = (a%2) ? a : -a; - prova a dirmi quanto vale b...
Dominique DONNICI
Allora prof se non sparo un razzo,b ha due valori...?
Stefano Salvi
DONNICI: NOOOOO b ha sempre un valore. Visto che a%2 vale 0, quindi è falso, prendo ilmterzo operanco che è -a, quindi b varrà -22.
Dominique DONNICI
Ah ci siamoooo,per 0 intendo falso e quindi uso il terzo
Andrea POTITO
e se lei avesse scritto a%2=0, b sarebbe diventato a?
Serghej COCCONI
in teoria si
Stefano Salvi
POTITO: Esatto, quidni b sarebbe diventato 22.
Andrea POTITO
Ok grazie
Serghej COCCONI
vuoto di memoria ,operazioni sulle stringhe
Dominique DONNICI
Ci sono ho capito ahah grazie
Serghej COCCONI
in che senso,mi ricordo che ne abbiamo trattato in classe
Stefano Salvi
Cocconi: operazioni sulle stringhe sono "come le operazioni sui vetori", ma senza sapere la dimensione in anticipo... E tenedo conto che le stringhe sono fatte di caratteri, quindi magari usando dei confronti con caratteri tra \'.
Cocconi: un esempio è quello di invertire i caratteri di una stringa, oppure di metterla tutta in minuscolo, oppure di contare le aprole, oppure di convertire una stringa numerica nel corrispondente numero intero... Un mondo...
Andrea POTITO
potrebbe fare un piccolo esempio di confronto tra stringhe con strcmp? e come faccio a capire quale viene prima in ordine alfabetico?
Serghej COCCONI
quindi dobbiamo mettere anche ,se necesari ,dei controlli sia per la lunghezza che per il contenuto?
Stefano Salvi
Cocconi: per la lunghezza è sempre necessario, per il contenuto, dipende dalla domanda.
Serghej COCCONI
in pratica l\'esercizio affrontato in classe mentre si trattava dell\'argomento ,o erro?
ok,la lunghezza sempre poi cambia da domanda a domanda la richiesta ,ci sono.
Stefano Salvi
Potito: Bah... char s1[]="Abba"; char s2[]="883"; printf("tra %s e %s vengono prima gli %s\n", s1, s2, (strcmp(s1,s2) < 0) ? s1, s2);
Cocconi: ovviamente... Se stavo spiegnado le stringhe...
Andrea POTITO
ok prof, ma se fossero uguali?
Serghej COCCONI
ahaha ,ok ok ho capito ,grazie mille!
Stefano Salvi
Proviamo a chiudere?
Serghej COCCONI
non le rubo altro tempo
Stefano Salvi
Per gli altri? Dubbi?
Andrea POTITO
No no va bene
Dominique DONNICI
Apposto
Andrea POTITO
Grazie mille buona cena
Stefano Salvi
Ok. Alora buona cena, buon riposo ed in bocca al lupo!

[Ritorna all'elenco sessioni]