segunda-feira, 16 de maio de 2016

Programação de Computadores - 16 de Maio de 2016

Programação de Computadores - 16 de Maio de 2016

Prova remarcada para 01/06/2016

Vetores

Declaração vetor

int dados[10];
tipo_de_dados nome_do_vetor [tamanho_do_vetor]

dados[i]

for (i=0; i<10; i++){

} // fechamento do for

for (i=9; i>0; i--){

} // fechamento do for

Crie um programa em c++ que realize o preenchimento de um vetor com 10 números inteiros e em seguida após a leitura imprima:

a) o maior e menor elemento;
b) a posição do vetor onde encontram-se os elementos pares;
c) a soma dos elementos do vetor.


Resposta minha (testada no CodeBlcks - funcionando):

#include <iostream>

using namespace std;

int main() {

//declarando as variáveis
int i;

int maior;
int menor;
int somaelementos;

//zerando as variáveis
i=0;

maior=0;
menor=0;
somaelementos=0;

int dados[10];

// entrando com os dados no vetor
for (i=0;i<10;i++){
 cout<<"Informe o dado "<<i+1<<"."<<endl;
 cin>>dados[i];
} // fechamento do for

// encontrando o maior e o menor elemento
maior=dados[0];
menor=dados[0];


for (i=0;i<10;i++){
  if (menor>dados[i]){   menor=dados[i];
  } // fechamento do if
  if(maior<dados[i]){
   maior=dados[i];
  }// fechamento do if

} // fechamento do for

//saídas
// resposta da letra A
cout<<"O maior elemento é "<<maior<<endl;
cout<<"O menor elemento é "<<menor<<endl;

// resposta da letra B
// identificando a posição dos elementos pares no vetor
for (i=0;i<10;i++){
 if (dados[i]%2==0){
  // saída da resposta da letra B
  cout<<"O número armazenado na posição "<<i<<" é par."<<endl;
 } // fechamento do if
} // fechamento do for


// resposta da letra C
// realizando a soma dos elementos do vetor
for (i=0;i<10;i++){
 somaelementos=somaelementos+dados[i];
 } // fechamento do for
// saída da resposta da letra C
cout<<"A soma dos elementos do vetor é "<<somaelementos<<"."<<endl;

} // fechamento do int main


Resposta da professora (esquema)

int main(){

int i;
int dados[10];
int maior, menor;

"preenchendo o vetor com 10 números inteiros

cout<<"Informe 10 números inteiros"<<endl;
for(i=0;i<10;i++){
 cin>>dados[i];
}
maior=dados[0];
menor=dados[0];

// verificando quem é o maior e o menor

for(i=0;i<10;i++){
 if (dados[i]>maior){
  maior=dados[i];
 }
 if (dados[i]<menor){
  menor=dados[i];
 }

}

} // fechamento do int main


Resposta da professora

int main(){

int i, maior, menor,soma;
int dados[10];

// colocando números inteiros no vetor
cout<<"Informe 10 números."<<endl;
for(i=0;i<10;i++){
 cin>>dados[i];
}

// transferindo o primeiro valor
maior=dados[0];
menor=dados[0];

// verificando o maior e o menor
for (i=0;i<10;i++){
 if (dados[i]>maior){
  maior=dados[i];
 }
 if (dados[i]<menor){
  menor=dados[i];
 }

// Posição dos elementos pares

cout<<"Posições onde existem elementos pares"<<endl;

for (i=0;i<10;i++){
 if (dados[i]%2==0){
  cout<<i<<"|";
 }
}

// somando todos os elementos
for(i=0;i<10;i++){
 soma=soma+dados[i];
}
// saídas
cout<<"A soma dos elementos do vetor é: "<<soma<<endl;
cout<<"O maior elemento é: "<<maior<<endl;
cout<<"O menor elemento é: "<<menor<<endl;
return 0;
}


Exercício 02

Faça um programa em c++ que realize a leitura de 10 números em um arquivo chamado dados1.txt, armazene esses dados em um vetor, e, em seguida, grave outro arquivo chamado dados2.txt com os valores do vetor em ordem inversa.


Resposta minha (testado no CodeBlocks):

#include <iostream>
#include <fstream>

using namespace std;

int main(){

// declarando as variáveis
int i;
int vetor[10];

//zerando as variáveis
i=0;

// lendo os dados de dados1.txt

ifstream lendo("dados1.txt");
 
for (i=0;i<10;i++){
 // gravando os dados no vetor
 lendo>>vetor[i];
} // fechamento do for

// gravando os dados em ordem inversa em dados2.txt
ofstream gravando ("dados2.txt");

for (i=9;i>=0;i--){
 // gravando os dados no vetor
 gravando<<vetor[i]<<endl;
} // fechamento do for


} // fechamento do int main

Lucas T R Freitas

Nenhum comentário: