Passaggio dei parametri

di il
1 risposte

Passaggio dei parametri

Ciao ragazzi, qualcuno mi può aiutare con il seguente esercizio?

Dato il seguente programma in un linguaggio non meglio identificato, indicare cosa stampa il programma nel caso di:

1. parametri passati per valore;

2. parametri passati per riferimento;

3. parametri passati per valore-risultato


int x=1;
int w = 3;
int z= 10;

int f(int y){
y=20;
throw E;
return (x++) + y; 
}

int g(int y){
y=100;
try{
  throw E;
  }
  catch E{ }
  
  return (x++) + y;
}

try{
   f(w);
   }
    catch E{ }
    print (x,w,z);
    z = g(w);
   print (x,w,z); 

Io ho svolto l'esercizio nel seguente modo ma non sono sicura che sia corretto:

passaggio per valore:
il primo print stampa 1,3,10
il secondo print stampa 2,3,10

passaggio per riferimento
il primo print stampa 2,20,10
il secondo print stampa 3,100,102

passaggio per valore-risultato
il primo print stampa 2,20,10
il secondo print stampa 4,100,103


mi sapreste dire se è corretto o eventualmente quali errori ho commesso? Grazie!

1 Risposte

  • Re: Passaggio dei parametri

    Che c'entra il C++? Non è quello che più si avvicina, perché il C++ non ha il valore-risultato. Hai sbagliato sezione

    Comunque l'unica risposta razionale è "non mi posso esprimere" . In "un linguaggio non meglio identificato" "+" potrebbe essere la moltiplicazione e "throw" un tipo, eccetera... la risposta corretta la sa solo il prof
Devi accedere o registrarti per scrivere nel forum
1 risposte