Você está na página 1de 5

Quest�es desafio sobre Vetores

Estude este assunto na p�gina http://bit.ly/1Oar7U9 e resolva a quest�o abaixo:

1) Crie um vetor bidimensionais com 10 (linhas) x 5 (colunas). As linhas


representam os c�digos de 10 clientes (0, 1, 2, 3...9) e as colunas representam os
c�digos de 50 produtos (0, 1, 3 ...49). Voc� deve preencher o vetor atribuindo a
cada posi��o aleat�ria (as posi��o v�o de [0] [0] a [9] [4] um n�mero entre 0... e
49 de forma que os produtos s�o atribu�dos aos clientes aleatoriamente.

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>

int main()
{
setlocale(LC_ALL, "Portuguese");

int Loja [10][5];


int Clientes, Produtos, Line,Col, Cont=0;
srand(time(0));

//Preenchendo a Matriz Loja.

for(Clientes=0;Clientes<10;Clientes++){
for(Produtos=0;Produtos<5;Produtos++){
Loja[Clientes][Produtos]= rand() % 51;
}
}
printf("\nQuest�o Desafio 1\n\n%33s\n", "-----Produtos-----");

for(Line=0;Line<10;Line++){
printf("\n");
if(Cont<=8){
printf("Cliente %d%5s", Cont+1, " ");
}else{printf("Cliente %d%4s", Cont+1, " ");}

for(Col=0;Col<5;Col++){
printf(" %2d ",Loja[Line][Col]);
if (Col == 4){
printf("\n");
}
}
Cont++;
}
return(0);
}

2) Altere a quest�o anterior para representar ao inv�s de clientes e produtos


cartas, o vetor bidimensional um baralho com 52 cartas (s�o 4 naipes e cada naipe
tem 13 cartas). Fa�a um fun��o que embaralhe o baralho toda vez que for chamada.

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>

int main()
{
setlocale(LC_ALL, "Portuguese");

int Embaralhar();

int Baralho [13][4];


int Carta, Naipe, Line,Col, Cont=0, Op=0;
srand(time(0));

//Preenchendo a Matriz Baralho.


//As cartas s�o enumeradas de 1 a 52.

for(Carta=0;Carta<13;Carta++){
for(Naipe=0;Naipe<4;Naipe++){
Baralho[Carta][Naipe]= 1 + (rand() % 52);
}
}
printf("\nQuest�o Desafio 2\n\n%27s\n%15s%4s%4s%4s\n", "----
Naipes----","1","2","3","4");

for(Line=0;Line<13;Line++){
printf("\n");
if(Cont<=8){
printf("Carta %d%5s", Cont+1, " ");
}else{printf("Carta %d%4s", Cont+1, " ");}

for(Col=0;Col<4;Col++){
printf(" %2d ",Baralho[Line][Col]);
if (Col == 4){
printf("\n");
}
}
Cont++;
}
printf("\n\n");

printf("Deseja embaralhar? (1-Sim 2-N�o)\n=> ");


scanf("%d",&Op);

if (Op==1){
do{

Embaralhar();

printf("Deseja embaralhar novamente? (1-Sim 2-N�o)\n=> ");


scanf("%d",&Op);
}while(Op==1);

}
return(0);

Embaralhar(){
setlocale(LC_ALL, "Portuguese");

int Baralho [13][4];


int Carta, Naipe, Line,Col, Cont=0, Op;
srand(time(0));

//Preenchendo a Matriz Loja.

for(Carta=0;Carta<13;Carta++){
for(Naipe=0;Naipe<4;Naipe++){
Baralho[Carta][Naipe]= 1 + (rand() % 52);
}
}
printf("\n\n%27s\n%15s%4s%4s%4s\n", "----Naipes----","1","2","3","4");

for(Line=0;Line<13;Line++){
printf("\n");
if(Cont<=8){
printf("Carta %d%5s", Cont+1, " ");
}else{printf("Carta %d%4s", Cont+1, " ");}

for(Col=0;Col<4;Col++){
printf(" %2d ",Baralho[Line][Col]);
if (Col == 4){
printf("\n");
}
}
Cont++;
}
printf("\n\n");

3) Implementa utilizando vetores (n�o necessariamente bidimensional) um sistema que


simula o sorteio da mega sena (http://bit.ly/1NbbA55). O usu�rio deve escolher 6
n�meros (entre 1 e 60) e o sistema deve sortear 6 n�meros randomicamente. Ao final
sistema informa quantos n�meros o usu�rio acertou.

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>

int main()
{
setlocale(LC_ALL, "Portuguese");

srand(time(0));

int MegaSena [12][5];


int Sorteados[0][6];
int Line,Col;

//Preenchendo a matriz MegaSena.


for (Line=0;Line<12;Line++){
for(Col=0;Col<5;Col++){
MegaSena[Line][Col] = 1 + (rand() % 60);
}
}

//Determinando a sequencia premiada.


int x,y;
for (x=0;x<1;x++){
for(y=0;y<6;y++){
Line = rand() % 12;
Col = rand() % 5;
Sorteados[x][y] = MegaSena[Line][Col];
}
}

//Recebendo 6 n�meros do usu�rio.


int Num1, Num2, Num3, Num4, Num5, Num6;
printf("Digite uma sequ�ncia de 6 n�meros: \n=> ");
scanf("%d%d%d%d%d%d",&Num1, &Num2, &Num3, &Num4, &Num5, &Num6);

//Verificando se acertou.
int Cont=0;

if(Num1 == Sorteados[0][0]){
Cont++;
}
if(Num2 == Sorteados[0][1]){
Cont++;
}
if(Num3 == Sorteados[0][2]){
Cont++;
}
if(Num4 == Sorteados[0][3]){
Cont++;
}
if(Num5 == Sorteados[0][4]){
Cont++;
}
if(Num6 == Sorteados[0][5]){
Cont++;
}

//Exibindo a sequ�ncia premiada.


x=0;
printf("A Sequ�ncia premiada �:\n\n");
for(y=0;y<6;y++){
printf(" %d ",Sorteados[x][y]);
}

printf("\n\n");

printf("Voc� acertou %d n�meros!!\n\n",Cont);

return 0;
}

Você também pode gostar