Você está na página 1de 8

Centro Universitrio Catlico Salesiano Auxilium

Trabalho Linguagem Cientfica 2 Termo 2010


Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

1. Elaborar um programa em C que l um conjunto de N valores e os coloca em 2
vetores conforme estes valores forem pares ou mpares. Ao final mostre os vetores
resultantes e quantos elementos possui cada vetor. Obs.: importante garantir que
a quantidade de nmeros no ultrapasse o tamanho do vetor.
#include<iostream.h>
int par_impar(int num)
{
if ((num%2)==0)
return 1;
else
return -1;
}


main()
{ int N, p=0, ip=0,V_Par[1000], V_Impar[1000];
char op;
cout<<"#### Este programa so aceita no mximo 1000 numeros ####";
cout<<"\n\n\n";
do
{
cout<<"Digite um valor: "; cin>>N;
if (par_impar(N)==1)
{
V_Par[p]=N;
p++;
}
else
{
V_Impar[ip]=N;
ip++;
}
cout<<"Deseja continuar s/n: ";
cin>>op;
}while(op=='S' || op=='s');

for(int i=0;i<p;i++)
cout<<"V_Par: "<<V_Par[i]<<"\n";

for(int i=0;i<ip;i++)
cout<<"V_Impar: "<<V_Impar[i]<<"\n";

system("Pause");
}

2. Escreva um programa em C que leia dois vetores de 10 posies e faa a
multiplicao dos elementos de mesmo ndice, colocando o resultado em um
terceiro vetor. Mostre o vetor resultante.
#include<iostream.h>
#include<time.h>
int mult(int A[], int B[], int C[])
{
for(int i=0; i<10; i++)
C[i]=A[i]*B[i];
}
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.



main()
{ int A[10], B[10], C[10];
char op;
cout<<"\t#### Este programa multiplica os elementos de A e B";
cout<<" e armazena o resultado no vetor C ####";
cout<<"\n";
srand(time(NULL));
for ( int i=0; i<10; i++)
{ A[i]=1+rand()%100;
B[i]=1+rand()%100;
mult(A, B, C);
}
for(int i=0;i<10;i++)
cout<<"A: "<<A[i]<<"\n";
cout<<"\n";
for(int i=0;i<10;i++)
cout<<"B: "<<B[i]<<"\n";
cout<<"\n";
for(int i=0;i<10;i++)
cout<<"C: "<<C[i]<<"\n";
cout<<"\n";

system("Pause");
}

3. Faa um programa em C que leia um vetor S[20] e uma varivel A. A seguir,
mostre o produto da varivel A pelo vetor.
#include<iostream.h>
#include<time.h>
int mult(int S[], int A)
{ int produto=0;
for(int i=0; i<20; i++)
produto =(A*S[i])+ produto;
return produto;
}


main()
{ int S[20], A;
cout<<"\t#### Este programa multiplica os elementos do Vetor S pela variavel
A";
cout<<"\n\n";

srand(time(NULL));

for (int i=0; i<20; i++)
{ cout<<"Entre valor S[ "<<i<<" ] :";
cin>>S[i];
}

cout<<"\n\nEntre com um valor inteiro e positivo:";
do
{
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

cin>>A;
if (A<0)
cout<<"\nNumero Invalido!! Digite outro...";
}while(A<0);

cout<<"\nO Produto = "<<mult(S,A);

cout<<"\n\n\n";


system("Pause");
}

4. Faa um programa em C que leia dois vetores: F[20] e G[20]. Calcule e mostre,
a seguir, o produto dos valores de F por G.
#include<iostream.h>
#include<time.h>
int mult(int F[], int G[])
{ int produto=0;
for(int i=0; i<20; i++)
produto =(F[i]*G[i])+ produto;
return produto;
}


main()
{ int F[20], G[20];
cout<<"\t#### Este programa multiplica os elementos do Vetor S pela variavel
A";
cout<<"\n\n";

srand(time(NULL));

for (int i=0; i<20; i++)
{ F[i]=rand()%50;
G[i]=rand()%50;
}

cout<<"### Valor armazenados no veto F ###\n";
for (int i=0; i<20; i++)
cout<<"F[ "<<i<<" ] = "<<F[i]<<"\n";
system("pause");

cout<<"### Valor armazenados no veto G ###\n";
for (int i=0; i<20; i++)
cout<<"G[ "<<i<<" ] = "<<G[i]<<"\n";
system("pause");

cout<<"\n O Produto = "<<mult(F,G);
cout<<"\n\n\n";


system("Pause");
}

Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

5. Escreva um programa em C que leia e mostre um vetor de 20 nmeros. A
seguir, conte quantos valores pares existem no vetor.
#include<iostream.h>
#include<time.h>
int pares(int Vet[])
{ int qt_pares=0;
for(int i=0; i<20; i++)
{ if ((Vet[i]%2)==0)
qt_pares++;
}
return qt_pares;
}


main()
{ int Vet[20];
cout<<"\t#### Este programa verifica quantos valores pares existem em um
vetor";
cout<<"\n";

srand(time(NULL));

for (int i=0; i<20; i++)
{ Vet[i]=rand()%50;
}

cout<<"### Valor armazenados no vetor Vet ###\n";
for (int i=0; i<20; i++)
cout<<"Vet[ "<<i<<" ] = "<<Vet[i]<<"\n";

cout<<"\n Quantidade de Pares = "<<pares(Vet);
cout<<"\n";


system("Pause");
}

6. Escreva um programa em C que leia um vetor de 20 posies e mostre- o. Em
seguida, troque o primeiro elemento com o ltimo, o segundo com o penltimo, o
terceiro com o antepenltimo, e assim sucessivamente. Mostre o novo vetor depois
da troca.
#include<iostream.h>
#include<time.h>
void inverte(int Vet[])
{ int aux, cont=19;
for(int i=0; i<10; i++)
{ aux=Vet[i];
Vet[i]=Vet[cont];
Vet[cont]=aux;
cont--;
}
}


main()
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

{ int Vet[20];
cout<<"\t#### Este programa verifica quantos valores pares existem em um
vetor";
cout<<"\n";

srand(time(NULL));

for (int i=0; i<20; i++)
{ cout<<"Digite Vet[ "<<i<<" ] : "<<"\n";
cin>>Vet[i];
//Vet[i]=rand()%100;
}

for (int i=0; i<20; i++)
cout<<"Vet[ "<<i<<" ] = "<<Vet[i]<<"\n";

inverte(Vet);

cout<<"\n### Mostrando Vetor Invertido ###\n";
for (int i=0; i<20; i++)
cout<<"Vet[ "<<i<<" ] = "<<Vet[i]<<"\n";

cout<<"\n\n\n";
system("Pause");
}

7. Escreva um programa em C que leia 50 valores para um vetor de 50 posies.
Mostre depois somente os positivos.
#include<iostream.h>
#include<time.h>
void positivos(int Vet[])
{ cout<<"\n\n### Mostrando os Positivos ###";
for(int i=0; i<5; i++)
{ if (Vet[i]>0)
cout<<"Vet[ "<<i<<" ] = "<<Vet[i]<<"\n";
}
}


main()
{ int Vet[50];
cout<<"\t#### Este programa verifica quantos valores pares existem em um
vetor";
cout<<"\n";

//srand(time(NULL));

for (int i=0; i<5; i++)
{ cout<<"Digite Vet[ "<<i<<" ] : ";;
cin>>Vet[i];
}

positivos(Vet);

cout<<"\n";
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.



system("Pause");
}

8. Escreva um programa em C que leia um vetor inteiro de 30 posies e crie um
segundo vetor, substituindo os valores nulos por 1. Mostre os 2 vetores.
#include<iostream.h>
#include<time.h>

main()
{ int VetA[30], VetB[30];
cout<<"\t#### Este programa gera o vetor B e substituindo os valores nulos por
1";
cout<<"\n";

//srand(time(NULL));

for (int i=0; i<5; i++)
{ cout<<"Digite VetA[ "<<i<<" ] : ";;
cin>>VetA[i];
}

cout<<"\n\nGerando VetB - substitui valores nulos por 1"<<"\n";
for (int i=0; i<5; i++)
{
if (VetA[i]==0)
VetB[i]=1;
else
VetB[i]=VetA[i];
}

cout<<"\n###Vetor A Vetor B ###\n";
for (int i=0; i<5; i++)
cout<<"VetA[ "<<i<<" ] = "<<VetA[i]<<"\t"<<"VetB[ "<<i<<" ] =
"<<VetB[i]<<"\n";

cout<<"\n";


system("Pause");
}

9. Escreva um programa em C que leia um vetor G de 10 elementos caracter que
representa o gabarito de uma prova. A seguir, para cada um dos 50 alunos da
turma, leia o vetor de respostas (R) do aluno e conte o nmero de acertos. Mostre
o n de acertos do aluno e uma mensagem APROVADO, se a nota for maior ou igual
a 6; e mostre uma mensagem de REPROVADO, caso contrrio.
void verifica_acerto(char Vet_Gab[],char Vet_Resp[], int num_aluno)
{ int total_acertos=0;
cout<<"\n\n### Mostrando acertos do aluno: "<<num_aluno;
for(int i=0; i<10; i++)
{ if (Vet_Gab[i]==Vet_Resp[i])
{ cout<<"\nAcertou a questao: "<<i+1;
total_acertos++;
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

}
}
if (total_acertos>=6)
{
cout<<"\nO Aluno: "<<num_aluno<<" acertou "<<total_acertos<<"
questoes!";
cout<<"APROVADO";
}
else
{
cout<<"\nO Aluno: "<<num_aluno<<" acertou "<<total_acertos<<"
questoes!";
cout<<"REPROVADO";
}
}


main()
{ char Vet_Gab[10], Vet_Resp[10];
int qtde_aluno=1;
cout<<"\t#### Este programa analisa as respostas do aluno com o gabarito e
depois informa sua situacao";
cout<<"\n";

//srand(time(NULL));

for (int i=0; i<10; i++)
{ cout<<"Digite a resposta(gabarito)da questao: "<< i+1<<" ";
cin>>Vet_Gab[i];
}

while (qtde_aluno<=50)
{
cout<<"Informe a resposta do aluno: "<<qtde_aluno;
for(int i=0; i<10; i++)
{
cout<<"\nResposta da questao: "<<i+1<<" ";
cin>>Vet_Resp[i];
}

verifica_acerto(Vet_Gab, Vet_Resp, qtde_aluno);
cout<<"\n";
system("Pause");

qtde_aluno++;
}

}

10. Escreva um programa em C que leia um vetor de 13 elementos, que o
Gabarito de um teste da loteria esportiva, contendo os valores 1(coluna 1), 2
(coluna 2) e 3 (coluna do meio). Leia, a seguir, para cada apostador, o nmero do
seu carto e um vetor de Respostas de 13 posies. Verifique para cada apostador
o nmeros de acertos, comparando o vetor de Gabarito com o vetor de Respostas.
Centro Universitrio Catlico Salesiano Auxilium
Trabalho Linguagem Cientfica 2 Termo 2010
Prof Lucilena de Lima
Entrega: 18/10/2010 entrega em formato digital durante a aula do referido dia.

Escreva o nmero do apostador e o nmero de acertos. Se o apostador tiver 13
acertos, mostrar a mensagem "Ganhador".
#include<iostream.h>


11. Escrever um programa em C que l 2 vetores X(10) e Y(10) . Crie, a seguir,
um vetor Z que seja a) a diferena entre X e Y; b) a soma entre X e Y; c) o produto
entre X e Y; Escreva o vetor Z a cada clculo.

12. Escrever um programa em C que l um vetor K(15). Crie, a seguir, um vetor P,
que contenha todos os nmeros primos de K. Escreva o vetor P.