Anteprima
Vedrai una selezione di 12 pagine su 53
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 1 Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 2
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 6
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 11
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 16
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 21
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 26
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 31
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 36
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 41
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 46
Anteprima di 12 pagg. su 53.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Bolchini Cristiana, libro consigliato Il linguaggio C, P. Deitel, H. Deitel Pag. 51
1 su 53
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Dichiarazione variabili

char = carattere

int = intero

float = reale

double = reale più grosso

long-int = intero più grosso

Ogni istruzione termina con un ;

Se più variabili condividono lo stesso tipo posso scrivere:

nomeint nome 1 2

Operazione di assegnamento

nome = 25 assegnare un valore a una variabile

→1 = nome assegnare a una variabile il contenuto di un'altra variabile

nome →1 2

nome = nome *5*10 assegnare con calcoli in mezzo

→1 2

Quando dichiariamo una variabile diciamo quanto spazio occupa in memoria

int op int = int

float op float = float

int op float = float

float op int = float

Scrivo un programma che chiede all'utente il raggio e restituisce perimetro e area del cerchio

Acquisire informazioni

scanf("%d", &a);

scanf("%d%d", &a, &b); se voglio acquisire 2 valori interi

%d int%c char%f, %g float

Se voglio far apparire a video

printf("benvenuto nel mio programma");

printf("il risultato è:

%f %f”, per, area);caratteri speciali\n = new line\t = tab

Chiedi un valore reale positivo e visualizza il valore intero arrotondato per difetto

Operazioni di cast per calcolare la media

gcc- Wall-std=c89-pedantic -o NOMEFILEESEGUIBILE NOMEFILESORGENTE

Wall segnala tutti I warning- →std=c89 controlla standard ANSI c89- →pedantic le violazioni degli standard vengono segnalate- →errori = non si produce l’eseguibile (problemi di sintassi)warning=viene creato un eseguibile (possibili problemi di semantica)

num = num +1; ++ num++; ++num;→num = num -1; -- num--; --num;

var op ; var op = ;→ris=ris/val; ris/=val;→tot=tot+cont; tot+=cont;

Il costrutto if

if(espressione){istruzione_V;}

if(espressione) ;istr_V1istr_V ;2 ;istr_V3

Scrivo un programma che, acquisito un valore, calcola e visualizza il suo valore assoluto

Acquisisce un valore intero, visualizza + se positivo, - se negativo e spazio se nullo

if(a==0) if(!a)↔if(val)if(val!=0)if

<istr_V;⌈else ⌋istr_F;while (espressione)istruzione V;> <Programma che acquisisce 20 numeri interi e calcola e visualizza il valore massimo> <while (espressione)istr;> <do{ istruzione V;}while (espressione);> <do{ istr1;istr2;} while (espressione);> <Scrivo programma che chiede di inserire un valore strettamente positivo e finché non è tale lo richiede> <Chiedo all'utente di inserire un valore intero strettamente positivo, che se non è tale viene richiesto, e poi calcola e visualizza il numero di cifre di cui è composto> <Scrivo un programma che acquisisce un primo valore intero seguito da una sequenza di valori interi a priori di lunghezza ignota, che si ritiene terminata quando l'utente inserisce il numero fine> <Il programma calcola e visualizza valore massimo, minimo e media dei valori> <Nel caso in cui l'utente inserisca subito il valore fine si visualizza il numero fine come max, min e media> <Array monodimensionali e costrutto for>

è la struttura dati che ci permette di definire la cardinalità dei dati, a cui assegno un nome che stabilisco conterrà un numero determinato di valori

Array è una variabile strutturata che contiene dati tra loro omogenei (tutti int o tutti float) in quantità costante e nota a priori

Ogni volta che abbiamo un array, abbiamo anche un indice

int float nome variabile [indice]

char int numeri [50]

numeri [i] metto tra parentesi il numero a cui voglio accedere

→Scrivo un programma che acquisisce 50 valori interi e visualizza i valori superiori al valore medio dei dati acquisiti

Iterazioni a conteggio

Bisogna ripetere un’attività per un numero di volte prefissato

Il costrutto for organizza

for ( ; ; )

1 tutte le istruzioni da eseguire prima di entrare nel ciclo i=0, tot=0→ →

2 condizione che esegue il ciclo i<NELEM→ →

3 istruzioni che sono di servizio a ripetere l’esercizio i++→ →

for (i=0;i<NELEM;1++)

if(num[i]>avg)printf(“%d\n”,

Scrivo un programma in C che acquisito un valore naturale che dev'essere compreso tra 1 e 1023 (estremi inclusi), e finché non è tale viene richiesto, calcola e visualizza la sua rappresentazione del sistema binario.

Legge di De Morgan:
C1 || C2 = !(!C1 && !C2) -> C1 && C2 = !(!C1 || !C2)

Scrivo un programma in C che acquisito un valore naturale che dev'essere compreso tra 1 e 1023 (estremi inclusi), e finché non è tale viene richiesto, calcola e visualizza la sua rappresentazione del sistema binario, utilizzando il numero massimo di bit previsti in relazione all'ampiezza dell'intervallo.

Acquisisci due valori tra 1 e 1023 e calcola e visualizza la loro rappresentazione in binario usando lo stesso numero di cifre per entrambi, che deve essere il minimo indispensabile.


#include <stdio.h>
#define MAX "1023"
#define MIN "1"
#define BASE "2"
#define NBIT "10"

int main (int argc, char *argv[]) {
    // Codice del programma
    return 0;
}

char* agrv[]){int a, b;
int bin[NBIT], i;
do{
    scanf("%d", &a);
}while (a<1||a>1023);
i=NBIT-1;

Array bidimensionali
int mat[NRIGHE][NCOLONNE];

per passare attraverso tutta la tabella scrivo un ciclo for dentro l'altro
for (i=0 ; iLa nascita di 50 persone e una ulteriore data, datarif: il programma calcola e visualizza il numero di persone che festeggiano il compleanno nello stesso giorno ed il numero di persone nate lo stesso giorno.

Le stringhe scanf("%s", &seq[0]);
printf("%s\n", &seq[0]);
\0 carattere terminatore
L'array avrà dimensione +1
La stringa è un array di caratteri &seq[0] seq &seq
Per lo scanf lo spazio, la tab e l'invio indicano che la sequenza desiderata è terminata

#include  bisogna includere una nuova libreria
Al posto di scanf uso l'istruzione gets
gets(seq);
gets(&seq[0]);

Ex: frase.c

I sottoprogrammi

Programma che chiede all'utente un valore intero positivo, e da all'utente la possibilità di scegliere cosa fare con questo valore
1 = acquisire un valore
2 = stabilire se sia un numero primo
3 = calcolare il fattoriale
4 = stabilire se il valore sia palindromo
0 = terminaIl ruolo dei sottoprogrammi è quello di spostare una parte di operazione in un punto diverso che realizza la computazione che mi serve producendo il risultato richiesto. Il sottoprogramma è un programma che lavora su una ridotta attività rispetto a una visione più grande. Un sottoprogramma può non ricevere nessuna informazione in ingresso o ricevere una o più istruzioni.

NB: nei temi d'esame è più probabile trovare 'scrivi un sottoprogramma' che 'scrivi un programma'

```html

void menu() {

  printf("-----\n");

  printf("1. inserisci valore\n");/*codice*/ ...

  return ...;

  printf("0. termina \n");}

  return ;

}

void = nessun tipo in particolare

return = interrompe la funzione ed eventualmente porta un valore restituendolo al chiamante

Scrivo un sottoprogramma che visualizza il menu, acquisisce la scelta dell'utente e finché non è

```

compatibilela richiede, e restituisce la scelta fatta al chiamante scanf, gets, printf sono tre→sottoprogrammi che sono già staticreati per noi e ci danno un’idea sucome si chiamano i sottoprogrammi

Scrivere un sottoprogramma che ricevuto un valore intero in ingresso, calcola e restituisce 1 se primo, 0altrimenti

if (cond)
    if (cond)
        return 0;
    return 0;
else
    return 1;
return 1;

#include

typedef

/*prototipi*/

↓void menu ( );
int sceltamenu ( );
int primo (int);
int main (int argc, char argv[]){
    …
}

Il passaggio parametri

Scrivere un sottoprogramma che ricevuta in ingresso una stringa calcola e restituisce il numero di caratteriutilizzati

int lunghezzastringa (char s[]){
    int dim;
    for(dim=0;s[dim]!=’\0’;dim++);
    return dim;
}

Scrivo un sottoprogramma che riceve in ingresso un array di valori interi, e qualsiasi altro parametro ritenutostrettamente necessario, e calcola e restituisce al chiamante l’indice dell’elemento con valore massimo; nelcaso ce


int maxarrayint (int v[], int dim){
    int i, imax;
    imax=0;
    for (i=1;i<dim;i++)
        if(v[i]>v[imax])
            imax=i;
    return imax;
}

void visualizzamat (int m[][NCOL], int nr, int nc){
    int i, j;
    for (i=0;i<nr;i++)
        for(j=0;j<nc;j++)
            printf("%d", m[i][j]);
    printf("\n");
}

int lunghezzastringa (char str[]){
    int i = 0;
    while (str[i] != '\0')
        i++;
    return i;
}

int ultima_posizione (char str[], char c){
    int i = 0;
    int pos = -1;
    while (str[i] != '\0'){
        if (str[i] == c)
            pos = i;
        i++;
    }
    return pos;
}

Formattazione del testo

in ingresso una stringa ca

Dettagli
A.A. 2022-2023
53 pagine
1 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher sofiabazzanella di informazioni apprese con la frequenza delle lezioni di Fondamenti di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Bolchini Cristiana.