Posts written by ßlues

  1. .
    ES 5: L'esercizio è quasi corretto. C'è un problema quando si stampa la posizione dell'elemento nell'array, sei una posizione indietro rispetto a quella in cui dovresti essere (le celle degli array contano da 0, la cella 0 è però la posizione 1). Puoi risolvere il problema nell'ultimo ciclo for.

    CODICE
    ....
    for (j = 0; j < contatore; j++)
             printf("%3d", b[j]+1);
             printf ("\n\n");
    ....


    CITAZIONE (Steb95 @ 30/4/2016, 15:16) 
    Esercizio 4
    CODICE
    #include <stdio.h>
    #include <stdlib.h>

    int main ()
    {
           int a[100];
           int i, c;
           char o;
           printf ("Digitare il numero di elementi da inserire.\n");
           scanf ("%d", &c);
           if (c <= 0 || c > 100) printf ("\nIl numero digitato e' esterno all'intevallo consentito di [1;100]!\n\n");
           else {
                           printf ("\nDigitare gli elementi da inserire.\n");
                           for (i=0; i < c; i++)
                           scanf ("%d", &a[i]);
                           fflush (stdin);
                           printf ("\nDigitare y per stampare gli elementi in ordine di inserimento, n per stamparli in ordine inverso.\n");
                           scanf ("%c", &o);
                           printf ("\n");
                           if (o == 121) for (i=0; i < c; i++) printf ("%d\n", a[i]);
                           if (o == 110) for (i=(c-1); i >= 0; i--) printf ("%d\n", a[i]);
                           if (o != 121 && o != 110) printf ("\nComando non consentito!\n");
                           printf ("\n");
                   }
           getchar();
           return 0;
    }


    Non mi è chiaro nella soluzione che hai postato l'uso del %-s quando deve acquisire il char z.
    Inoltre avviando il programma che hai messo non mi stampa nulla sia che scrivo s sia che scrivo i.
    (Non mi avevi detto che per fare i confronti con char bisogna usare i codici della tabella ascii, ci ho messo mezz'ora o.O... oppure l'hai scritto da qualche parte e me lo sono scordato?)

    Il %­s è sbagliato, errore mio (serve per le stringhe). Il programma (ora che lo vedo, li ho fatti eoni orsono) termina prima di stampare qualcosa per colpa di un problema legato all'operatore "%c": se nella printf() precedente c'è un "\n" questo viene contato come char nella scanf() successiva e preso dentro al "%c", per colpa del buffer (una rottura). Per ovviare a questo problema, puoi mettere il carattere "a capo" nel testo della scanf() (prima di "%c"), utlizzare la funzione fflush("variabile") (dovrebbe stare nella libreria stdlib.h) o mettere una printf() prima per mandare a capo il testo.

    Edited by Blues_Man - 30/4/2016, 15:42
  2. .
    Benvenuto... un punto d'inizio è leggere il regolamento, ma riassunto vuol dire : "Posta in rispetto degli altri e delle loro idee e ricordati che sei responsabile di ciò che posti."
    Buon proseguimento,

    Lo Staff.
  3. .
    Le restanti 4 vengono occupate da valori a caso finché non le utilizzi. Per quanto riguarde le stringhe invece, se inserisci una parola di 6 caratteri in un array di char di dimensione fisica 10, vengono occpuate 7 celle, i 6 della parola + 1 che è il carattere terminatore "/0".
  4. .
    Ma quando? E' da 3 anni che bazzico qua e non s'è mai parlato di un raduno.
  5. .
    per me sì, poi libero di fare come vuoi.
  6. .
    Gli attori tedeschi non hanno emozioni quando recitano. Tuttavia, non credo che il finale rovini del tutto il messaggio (col camera-man che, provando a dire la verità viene preso per matto) risulta quantomeno ironico il fatto che gli abbiano fatto fare il film, o almeno io l'ho vista così.
  7. .

    Lui è Tornato
    Informazioni | Trama, Trailer Ufficiale & Recensione



    Titolo originale: Er ist wieder da
    Paese: Germania
    Regia: David Wnendt
    Anno: 2015
    Genere: Commedia, Satirico
    Durata: 116 Min
    Voto della critica (IMDB): 7.1
    Interpreti e personaggi:Oliver Masucci (Adolf Hitler), Fabian Busch (Fabian Sawatzki), Katja Riemann (Katja Bellini), Christoph Maria Herbst (Christoph Sensenbrink), Franziska Wulf (Franziska Krömeier), Michael Kessler (Michael Witzigmann)


    Trama

    Dopo settant'anni di assenza, Hitler si risveglia nella Berlino del 2015: inizialmente confuso e disorientato, quando la gente lo crede un comico decide di sfruttare questa sua popolarità per approdare in televisione e cercare di riconquistare il potere perduto.

    plus Registrati user_comment Info & Supporto

    Anteprima / Trailer



    Recensione

    La regia è sufficiente, gli attori non sono eccezionali, ma per fanno il loro lavoro più che bene. Una menzione a parte per l'interpretazione di Oliver Masucci che sembra essere riuscito a dare una buona sfaccettatura emozionale ad un protagonista che, a dire il vero, rimane piatto durante tutto il film, e per Fabian Busch, che esce temporaneamente dal ruolo del classico attore tedesco senza emozioni, fornendo una prestazione di buon livello. Gli effetti speciali sono praticamente nulli, tanto che inizialmente sembra più simile ad un documentario che a un film. Molto ben pensato la parodia "Sensenbrink-iana" dell'ultima scena de "La Caduta - Gli Ultimi Giorni di Hitler", cosa che ha strappato qualche risata per chi ha già avuto modo di vedere il film originale ab illo tempore.
    E' uno dei pochi film tedeschi che meritano, uno di quelli che ti aggrediscono, ponendoti davanti il tutto senza troppi fronzoli: dopo un velo di ironia iniziale, è in grado di comunicare e far innescare nello spettatore una riflessione piuttosto profonda e l'artificio (certamente non nuovo) di mettere un film dentro un film ne amplifica il risultato.

    Voto: 6.9




    @World Archive | RIPRODUZIONE RISERVATA ©
    The BluesMan

  8. .
    Sono stato staffer su un forum che, tempo addietro (quando forumfree era più "free") si occupava di cose... ehm, di altre cose.
    Per la mia esperienza, posso dire che tempo fa era diverso, quando il fenomeno facebook non era ancora espoloso del tutto. I forum erano e sono un posto dove incarnare il nostro alter ego, dove esser liberi di dire qualcosa senza essere etichettati, dove poter esprimere la propria opinione.

    Se fate un raduno, dovreste pensare ad un posto equidistante da tutti e che almeno partecipino più di 4 gatti o 6 scoiattoli.
  9. .
    Come sistema operativo di per sè direi iOs, molto fluido ed intuitivo; android per i neofiti è un po' più complesso, ma si difende bene direi che è quasi alla pari dell'os di casa apple. Non sopporto windows phone, ne ho sempre odiato la grafica.
  10. .

    Il Linguaggio C - Puntatori




    Giungiamo ora ad una parte fondamentale per la programmazione, le variabili puntatore. Ideologicamente, un puntatore non è esattamente una variabile con un valore, ma una sorta di "segnalibro" che ricorda la cella di memoria associata a quella variabile. Ricordate quando nel capitolo sulle funzioni vi ho detto che gli array vengono passati come parametri attuali senza mettere le parentesi? Questo è perché gli array vengono utilizzati come un gruppo di celle di memoria e quando noi passiamo il vettore v senza parentesi stiamo passando in realtà il primo elemento dell'array, ovvero il primo indirizzo della serie di celle di memoria dell'array. In pratica, attraverso i puntatori, possiamo modificare una variabile in una funzione senza doverla necessariamente copiare nello stack di attivazione della funzione, consentendoci di modificare il valore direttamente nella funzione chiamante. Per fare questo, basta applicare alcune regole pittosto semplici: per passare una variabile "per riferimento", si aggiunge il simbolo "&" davanti alla variabile e "*" nella dichiarazione della funzione. Nella funzione che si prende il puntatore, ogni operazione che facciamo sulla variabile puntatore (anche un assegnamento), dovrà essere sempre preposto il simbolo * al nome della variabile.
    Es.
    int main(void){int k=2000;
    ...
    i=my_funk(&k);
    }
    /*Funzione*/
    int my_funk(int *a){int k;
    ...
    *a=k*3;
    ...
    }



    RIPRODUZIONE RISERVATA | COPYRIGHT ©Blues_Man, 2016



    Edited by Blues_Man - 30/8/2016, 00:53
  11. .

    Il Linguaggio C - Funzioni




    Avendo introdotto e matabolizzato gli argomenti essenziali per la programmazione in C, passiamo ora ad una programmazione strutturata, una programmazione pulita, dove non c'è solo il main ma altre funzioni che aiutano a "scompattare" il problema secondo di metodi di realizzazione di una algoritmo, detti bottom up o top down (dalle tessere singole al puzzle completo e dalla cornice del puzzle fino al completamento).


    Funzioni


    Le funzioni sono arbitrarie, possono essere liberamente create dall'utente seguendo i passi dell'implementazione del main. Tuttavia è bene ora precisare alcune cose; all'inizio viene definito un tipo di dato che dovrà restituire la funzione: int è il tipo di default del c, ovvero se non scrivete nulla, il compilatore C assume che la funzioni ritorni un int. Prima di essere chiamata una funzione deve essere dichiarata e/o definita PRIMA della funzione che la chiama. I parametri sono formali e di riferimento, servono a
    Es.
    int my_funk(int a); ---> DICHIARAZIONE
    main(void){int i, k;
    ....
    ....
    i=my_funk(k);
    ....

    }
    OK

    int my_funk(int a){
    /*codice*/
    } ---> DEFINIZIONE
    main(void){int i, k;
    ....
    ....
    i=my_funk(k);
    ....
    return 0;
    }
    OK

    main(void){int i, k;
    ....
    ....
    i=my_funk(k); -->Tempo di invocazione della funzione
    ....
    return 0;
    }
    int my_funk(int a){
    /*codice*/
    } ---> DEFINIZIONE
    NO: La definizione/dichiarazione della funzione è successiva alla funzione che la invoca->Per colpa del linguaggio C (seguenziale e non ad oggetti) questa cosa non funziona.

    Le funzioni seguono dunque la seguente sintassi:
    tipo_restituito nome_funzione(parametri formali){
    /*codice*/
    return variabile/valore (deve essere per forza del tipo specificato all'inizio);
    }


    Come esercizio, potete svoglere quelli precedenti utilizzando una o più funzioni ausiliarie per risolvere il problema posto.

    Nota: nelle dichiarazioni, gli array vengono scritti nei parametri formali (quelli a tempo di dichiarazione della funzione) con la notazione: tipo x[]. Nel caso di array multi dimensionali, la dimensione dell'ultima dimensione deve essere specificata e introdotta (Es. tipo x[][30]). Quando la funzione viene invocata, le parentesi quadre non vanno messe tra i parametri attuali (quelli all'interno della funzione al tempo di invocazione), e si indica solo la variabile array(es. se a è un array definito come char a[23], alla funzione passo solo a).



    RIPRODUZIONE RISERVATA | COPYRIGHT ©Blues_Man, 2016



    Edited by Blues_Man - 30/8/2016, 00:51
  12. .
    Per l'appunto è una conoscenza teorica o sperimentale, con molti punti oscuri.
    Le interpretazioni da questo punto di vista sono tante e diverse (per esempio la mia differisce dalla tua, ma non per questo la escludo a prescindere), e penso che Alfyus stesse cercando un aiuto da questo punto di vista.
  13. .
    Oltre a ciò che ha detto gantz, il sogno può anche rappresentare un contatto con l'inconscio, con quella parte del nostro io che è segregata da un codice etico, dalle condizioni di vita ecc. L'aver trovato un ascensore ed esserci saliti può avere il significato di un miglioramento nel futuro, o altre cose. Ciò che però mi sembra rilevante è l'aver ucciso tuo nonno nel sogno, che è cosa particolare, in quanto uccidi un tuo familiare; questo è forse indice di una rabbia repressa nei confronti dei tuoi genitori e/o parenti.
    Questa è la mia interpretazione poi, per cui prendila con le pinze.
  14. .
    L'esercizio è corretto.

    Per quanto riguarda gli altri esercizi, non ne aggiungo senza array di questo tipo perché primo questo è un corso, in questo corso gli array e le stringhe li ho già trattati (potresti darci un'occhio almeno), e secondo c'è anche l'es 7 senza array.
  15. .
    CITAZIONE (Steb95 @ 28/3/2016, 20:20) 
    Il problema sorge quando ho usa serie di dati come 1 1 1 -1 e il -1 fa parte della serie di cui voglio fare la somma: in questo caso il programma, considerando il -1 come uno stop, non mi permette di calcolare la somma della mia serie. Con lo 0 questo problema non esiste poichè aggiungere zero non varia il risultato.

    Supponiamo di avere un conto economico con le seguenti voci in decine di migliaia di euro:
    A - valore della produzione: 30
    B - costi della produzione: 10
    C - proventi ed oneri finanziari: (1)
    D - rettifiche del valore di attività e passività finanziarie: 2

    Il programma non mi permette di trovare l'utile prima delle imposte, in quanto dovrei fare: 30 - 10 - 1 + 2. Il numero di riferimento come termine della serie è importante.

    Ahh, quindi senza usare la sqrt?


    Esercizio 1:
    CODICE
    #include <stdio.h>
    #include <stdlib.h>
    int main ()
    {
           int x,y;
           printf ("Inserire un numero intero.\n");
           scanf ("%d", &x);
           y = 0;
           if (x < 0) printf ("E' stato inserito un numero negativo, la radice quadrata non esiste.\n\n");
           else {
                           while (y*y <= x)  y = (y+1);                                  
                           if ((y-1)*(y-1) < x)
                                                                   printf ("\nLa radice quadrata di %d approssimata all'intero precedente e' %d.\n\n", x,(y-1));
                           if ((y-1)*(y-1) == x)
                                                                   printf ("\nLa radice quadrata di %d e'esattamente pari a %d.\n\n", x,(y-1));
                   }
           getchar ();
           return (0);
           
    }

    E che cristo, non devi farne un caso di stato, ho fatto un'esercizio semplice per rinfrescare i concetti dell'if. E' buona cosa proiettarsi verso l'utente finale, ma per adesso è inutile: l'importante ora è capire le meccaniche coinvolte.

    L'esercizio è corretto; ricorda che per la sintassi del C, scrivere y+1 è equivalente a scrivere y++ (rispettivamente y-- equivale a scrivere y-1).
828 replies since 1/9/2013
.