Lógica, perguntado por renanrn00, 10 meses atrás

4) Definir os dois tipos de Passagem de Parâmetros para Funções e Procedimentos em Algoritmos:
a. Passagem de Parâmetros por Valor (cite um exemplo);
b. Passagem de Parâmetros por Referência (cite um exemplo).

Soluções para a tarefa

Respondido por oliveirapedroo
2

Resposta:

Em C:

A)

Função:

#include <stdio.h>

int valor(int x){

 x+=10;  

 return x;

}

int main(){

 int x=10;

 printf("Valor de x durante a função = %d\n",valor(x));

 printf("Valor de x apos a função = %d\n",x);

}

/*Retorno:

Valor de x durante a função = 20;

Valor de x apos a função = 10*/

Procedimento:

#include <stdio.h>

void valor(int x){

 x+=10;  

 printf("Valor de x durante o procedimento = %d\n",x);

}

int main(){

 int x=10;

 valor(x);

 printf("Valor de x apos o procedimento = %d\n",x);

}

/*Retorno:

Valor de x durante o procedimento = 20;

Valor de x apos o procedimento = 10*/

B)

Função:

#include <stdio.h>

int referencia(int *x){

 *x+=10;  

 return *x;

}

int main(void){

 int x=10;

 printf("Valor de x durante a função = %d\n",referencia(&x));

 printf("Valor de x apos a função = %d\n",x);

}

/*Retorno:

Valor de x durante a função = 20;

Valor de x apos a função = 20*/

Procedimento:

#include <stdio.h>

void referencia(int *x){

 *x+=10;  

 printf("Valor de x durante o procedimento = %d\n",*x);

}

int main(void){

 int x=10;

 referencia(&x);

 printf("Valor de x após o procedimento = %d\n",x);

}

/*Retorno:

Valor de x durante o procedimento = 20;

Valor de x apos o procedimento= 20*/

Explicação:

Função - retorna valor.

Procedimento - não retorna valor.

Passagem de Parâmetros por Valor - Passa uma cópia da variável como parâmetro.

Passagem de Parâmetros por Referência - Passa a variável em si.

Perguntas interessantes