Uguaglianza

di il
6 risposte

Uguaglianza

Buon giorno.
stavo smanettando accanto a un esercizio, del quale non sono sicuro se la richiesta è stata soddisfatta con il codice da me scritto, oppure mi chiede di fare qualche passaggio automatico , che non ho colto.
orbene! durante la stesura mi sono imbattuto nella condizione descritta nel codice "tema della domanda".
posso avere qualche riferimento che mi chiarisca perchè nella riga 12 ho il messaggio di errore : expected primary expression before int ;
la spiegazione che mi sono dato, ovviamente ne chiedo la conferma, è che : dopo il segno = sto gia usando la variabile prima della sua visibilità.
ciononostante , se è come penso, qual'è il meccanismo che ne impedisce la visibilità dopo averla dichiarata come nel caso descritto ?
grazie!

#include <iostream>

using namespace std;

///Carica da tastiera un array di n elementi e lo stampa
///invertendo il primo elemento con l'ultimo,
///il secondo con il penultimo, ecc.
int main ()
{
    int myar [] {} ;                 ///dichiarazione di array
    ///int a = myar[0] ;                ///primo elemento array riferito a una variabile
    myar[0] = int a;///*** tema della domanda***
    int b = myar[1];                 ///secondo elemento array riferito a variabile
    int c = myar[2] ;                ///terzo elemento array riferito a variabile
    cin>>myar[0]>>myar[1]>>myar[2];  ///inserzione da tastiera valore elementi array

    cout<< c <<" "<< b <<" "<<a <<"\n ";   /// stampa delle variabili riferite all'array
    cout<<myar[2]<< " "<<myar[1]<< " "<<myar[0];/// stampa degli elementi dell'array
    return 0;
}

6 Risposte

  • Re: Uguaglianza

    Non ho capito molto ma .... che vuoi fare??

    myar[0] = int a;

    non ha senso ... semmai

    int a;
    myar[0] = a;
  • Re: Uguaglianza

    Buon giorno oregon! grazie della tua disponibilità.
    non voglio fare nulla di particolare. a programma scritto stavo girando e rigirando i vari componenti per vedere come si comportano.
    int a ;
    myar[0] =a;
    mi era gia chiaro che potesse funzionare, come anche funziona
    int a = myar[0];

    myar[0] = int a; affermi che non ha senso , mi piacerebbe capire un po di più il perchè. in fondo, dichiaro e uso int a come si può fare in altri spezzoni di codice. al di la che è sbagliato e non funziona.
  • Re: Uguaglianza

    Scusa, ma tu studi il C/C++ o lo vuoi "scoprire"? In che senso "per vedere come si comportano" ??

    Mica si studia così un linguaggio di programmazione.

    Quello che hai scritto non ha senso perché int a è una dichiarazione e il resto è una assegnazione e sono cose che si fanno in una certa precisa sequenza. Prima il compilatore sa che "esiste" una variabile (con il suo tipo) e poi assegna un valore. Evidentemente, assegnare un valore a qualcosa che esisterà "dopo" non ha alcun senso.
  • Re: Uguaglianza

    Per me, lo sto studiando! lo faccio in autonomia e non ho il prof a disposizione per chiedere delucidazioni.
    approfitto della vostra disponibilità e faccio qualche domanda che mi assesta i vari argomenti che mi prefisso di mettere in pratica dopo la lettura.
    si lo ammetto! quando scrivo del codice provo anche a vedere cosa succede se...
    aggiungiamo che ho un po di impazienza , seppur mi affretto lentamente.
    se questo è abusare del forum, vi chiedo perdono. non ho frequentato forum prima di adesso e a parte questo non ne frequento altri.
    se devo limitarmi , basta saperlo!
  • Re: Uguaglianza

    Brugli ha scritto:


    Per me, lo sto studiando! lo faccio in autonomia e non ho il prof a disposizione per chiedere delucidazioni.
    Per questo ci sono i libri. Si apre un libro e si studia dal primo capitolo fino all'ultimo, facendo gli esercizi.
    ho un po di impazienza
    Malissimo ...

    Non è questione di "approfittare" o meno del forum, il fatto è che stai sbagliando metodo di autoapprendimento.
  • Re: Uguaglianza

    Infatti è quando metto in pratica gli esercizi che iniziano a volteggiare tutte le pagine lette. a volte le metto a posto a volte chiedo l'aiutino, ma gia lo sai. con la tua frase: facciamo un passo avanti prova a scrivere ecc.ecc. mi hai messo a posto , non uno ma, diversi aspetti di quello che mi crucciava, l'altra volta . se ritieni che sto sbagliando e vuoi suggerire qualche metodo piu efficace, sono aperto a ogni consiglio.
    di certo non mi fermo!
Devi accedere o registrarti per scrivere nel forum
6 risposte