Introdução
Neste laboratório, discutiremos como trocar dois números usando funções em C++. Existem dois métodos para resolver este problema com a ajuda de funções:
Neste laboratório, discutiremos como trocar dois números usando funções em C++. Existem dois métodos para resolver este problema com a ajuda de funções:
Para começar, crie um novo arquivo C++ no seu editor de código preferido. Você deve fornecer o caminho e o nome do arquivo de código no início do laboratório. Por exemplo: ~/project/main.cpp.
touch ~/project/main.cpp
Em "Call by Value" (Chamada por Valor), os parâmetros reais são passados ao chamar a função, e as operações nos parâmetros formais não se refletem nos parâmetros reais. Veja como implementá-lo:
#include<iostream>
using namespace std;
void swap(int x,int y);
/*Troca de Dois Números em C++ Usando Funções Call by Value*/
int main()
{
int a,b;
cout<<"Digite os Dois Números para Trocar em C++: ";
cin>>a>>b;
cout<<"\nApós a Troca de Dois Números:";
swap(a,b);
return 0;
}
void swap(int x,int y)
{
int z;
/*Variável extra para armazenar o valor da primeira ou segunda variável*/
z = x;
/*Copiando o valor da primeira variável para a variável temporária*/
x = y;
/*Copiando o valor da segunda variável para a primeira variável*/
y = z;
/*Copiando o valor da variável temporária para a segunda variável*/
cout<<" "<<x<<" "<<y;
}
Para executar o código, salve o arquivo, abra o terminal e digite o seguinte comando:
g++ main.cpp -o main && ./main
Em "Call by Reference" (Chamada por Referência), passamos o endereço do parâmetro real no parâmetro formal, de modo que as alterações nos parâmetros formais se refletem nos parâmetros reais. Veja como implementá-lo:
#include<iostream>
using namespace std;
void swap(int *x,int *y);
/*Troca de Dois Números em C++ Usando Funções Call by Reference*/
int main()
{
int a,b;
cout<<"Digite Dois Números para Trocar: ";
cin>>a>>b;
swap(&a,&b);
cout<<"\nApós a Troca de Dois Números: ";
cout<<a<<" "<<b<<" \n";
return 0;
}
void swap(int *x,int *y)
{
int z;
z = *x;
/*Copiando o endereço da primeira variável para a variável temporária*/
*x = *y;
/*Copiando o endereço da segunda variável para a primeira variável*/
*y = z;
/*Copiando o endereço da variável temporária para a segunda variável*/
}
Para executar o código, salve o arquivo, abra o terminal e digite o seguinte comando:
g++ main.cpp -o main && ./main
Aqui está o código completo para o arquivo main.cpp:
#include<iostream>
using namespace std;
void swap(int x,int y);
/*Troca de Dois Números em C++ Usando Funções Call by Value*/
void swap(int *x,int *y);
/*Troca de Dois Números em C++ Usando Funções Call by Reference*/
int main()
{
int a,b;
cout<<"Digite o primeiro número: ";
cin>>a;
cout<<"Digite o segundo número: ";
cin>>b;
// Método 1: Call By Value (Chamada por Valor)
cout<<"\nTroca de Dois Números Usando Call By Value\n";
swap(a,b);
// Método 2: Call By Reference (Chamada por Referência)
cout<<"\nTroca de Dois Números Usando Call By Reference\n";
swap(&a,&b);
return 0;
}
void swap(int x,int y)
{
int z;
/*Variável extra para armazenar o valor da primeira ou segunda variável*/
z = x;
/*Copiando o valor da primeira variável para a variável temporária*/
x = y;
/*Copiando o valor da segunda variável para a primeira variável*/
y = z;
/*Copiando o valor da variável temporária para a segunda variável*/
cout<<" "<<x<<" "<<y;
}
void swap(int *x,int *y)
{
int z;
z = *x;
/*Copiando o endereço da primeira variável para a variável temporária*/
*x = *y;
/*Copiando o endereço da segunda variável para a primeira variável*/
*y = z;
/*Copiando o endereço da variável temporária para a segunda variável*/
}
Salve o arquivo, abra o terminal e digite o seguinte comando para executar o código:
g++ main.cpp -o main && ./main
Neste laboratório, aprendemos como usar funções para trocar dois números usando os métodos Call by Value (Chamada por Valor) e Call by Reference (Chamada por Referência) na linguagem de programação C++.