Sie sind auf Seite 1von 5

Instituto Federal de Educao, Cincia e Tecnologia da Bahia Campus Irec Disciplina: Algoritmos II o Prof Leandro Souza

NOTA_____

PRTICA VETOR E MATRIZ 1. Elabore um programa que l 30 valores inteiros para um vetor. Encontre o menor e o

maior valor deste vetor, escrevendo-os juntamente com a sua posio.


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <conio.c> #include <iostream> #include <windows.h> using namespace std; int vetorA[30],i=0; int maiorNoVetor = 0; int menorNoVetor = maiorNoVetor; int posicaoMenor=0,posicaoMaior=0; main (){ // este lao solicita entrada dos numeros for (i=0;i<10;i++) { cout << "Indice: " << i << " Valor: "; cin >> vetorA[i]; // este if compara o valor digitado se maiorNoVetor if (vetorA[i] > maiorNoVetor) { maiorNoVetor = vetorA[i]; posicaoMaior = i; } // este if compara o valor digitado se menorNoVetor if (vetorA[i] < maiorNoVetor) { menorNoVetor = vetorA[i]; // guarda menor Valor posicaoMenor = i; // guarda a posio } } cout << endl << endl; // duas linhas em branco na tela // exibe o vetor na tela. for (i=0;i<10;i++){ cout << "Indice: " << i << " Valor digitado: " << vetorA[i] << endl; }

cout << endl << endl; // duas linhas em branco na tela cout << "O Maior Numero -> " << maiorNoVetor << " na Posicao -> " << posicaoMaior << endl; cout << "O Menor numero -> " << menorNoVetor << " na Posicao -> " << posicaoMenor << endl; getch(); }:

------------------------------------------------------------------------------------------------------------------------------2.

Leia uma matriz 20 x 20. Leia tambm um valor X. O programa dever fazer uma busca desse valor na matriz e, ao final escrever a localizao (linha e coluna) ou uma mensagem de no encontrado.

main (){ int matrizA[3][3]; int i=0,j=0; int meuNumero=0; for (i=0;i<3;i++){ for (j=0;j<3;j++){ cout << "Digitando: "; cin >> matrizA[i][j]; } } cout << endl << endl; cout << "Meu vetor " << endl << endl; for (i=0;i<3;i++){ for (j=0;j<3;j++){ cout << matrizA[i][j] << " "; } cout << endl; } cout << "Digite um numero: "; cin >> meuNumero; for (i=0;i<3;i++){ for (j=0;j<3;j++){ if(meuNumero == matrizA[i][j]) printf("Linha [ %d] Coluna [%d] Numero: [%d][%d] \n", i,j, matrizA[i][j]); if(meuNumero != matrizA[i][j]){ printf("Linha [ %d] Coluna [%d] NAO ENCONTRADO \n", i,j, matrizA[i]);

} } getch(); } }:

-------------------------------------------------------------------------------------------------------------------------------

3. Escreva um algoritmo que leia um vetor de 6 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 6 posies. Verifique para cada apostador os nmeros de acertos, comparando o vetor de Gabarito com o vetor de Respostas. Escreva o nmero do apostador e o nmero de acertos. Se o apostador tiver 6 acertos, mostrar a mensagem "Ganhador".
#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <conio.c> #include <iostream> #include <windows.h> using namespace std; main (){ int vetor6[6],vetorSorte[6],vetorCompara[6]; int i,j,qtdJogadores,contaAcerto=0,contaErros=0;

for (i=0;i<6;i++){ cout << "Numeros da Loteria: "; cin >> vetor6[i]; vetorSorte[i]= 1 + (int)(60.0 * rand()/(RAND_MAX-1)); } cout << endl; // exibe os nmeros digitados. cout << " Numeros Digitados: " << endl; for (i=0;i<6;i++){ cout << vetor6[i] << " "; } // exibe os numeros sorteados cout << endl; cout << " Numeros Sorteados: " << endl; for (i=0;i<6;i++){ cout << vetorSorte[i] << " "; } cout << "\n Comparando Vetores " << endl; for (i=0;i<6;i++){ if(vetor6[i]== vetorSorte[i]){ vetorCompara[i] = vetorSorte[i]; contaAcerto++; cout << vetorCompara[i] << " "; } else{ cout << endl << "Nao acertou "; contaErros++; } cout << endl; } cout << endl; cout << "Voce acertou: " << contaAcerto << endl; cout << "Voce errou: " << contaErros << endl; getch(); // OBSERVAO: No est concludo.

// falta fazer matriz para receber os vetores // falta fazer vetor para comparar quem acertou mais. }:

-------------------------------------------------------------------------------------------------------------------------------

5. Escrever um algoritmo que l 2 vetores de tamanho 10. Crie, a seguir, um vetor S de 20 posies que contenha os elementos dos outros 2 vetores em ordem crescente. Obs.: copie primeiro os valores para o vetor S para depois orden-los.
#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <conio.c> #include <iostream> #include <windows.h> using namespace std; main (){ int vetorA[10],vetorB[10],vetorS[20]; for (int i=0;i<10;i++){ vetorA[i] = i*2; } for (int i=0;i<10;i++){ vetorB[i] = i*3; } for (int i=0;i<10;i++){ vetorS[i] = vetorA[i]; vetorS[i+10]=vetorB[i]; } cout << " *** Vetor A ***" << endl; for (int i=0;i<10;i++){ cout << "Vetor A em: " << i << " Tem " << vetorA[i] << endl; } cout << " *** Vetor B ***" << endl; for (int i=0;i<10;i++){ cout << "Vetor B em: " << i << " Tem " << vetorB[i] << endl; } cout << " *** Vetor S ***" << endl; for (int i=0;i<20;i++){ cout << "Vetor S em: " << i << " Tem " << vetorS[i] << endl; } getch(); }

-------------------------------------------------------------------------------------------------------------------------------

5. Faa um algoritmo que gere a seguinte matriz:

111111 122221 123321 123321 122221 111111


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <conio.c> #include <iostream> #include <windows.h> using namespace std; main (){ int matrizFeita[6][6] = {1,1,1,1,1,1,1,2,2,2,2,1,1,2,3,3,2,1,1,2,3,3,2,1,1,2,2,2,2,1,1,1,1,1,1,1}; int x=10,y=10; for (int i=0;i<6;i++){ for (int j=0;j<6;j++){ cout << matrizFeita[i][j]; } cout << endl; } getch(); }