sempre que tento acessar o case 3 ou o case 4(que são cópias um do outro), aparece a imagem de erro do windows. segue o código:
#include <cstdlib>
#include <iostream>
using namespace std;
////////////////////////////////////////////////////////////////////////////////
int tamanho_vetor(int tamanho)
{
printf("\ninforme o tamanho do vetor: \n");
scanf("%d",&tamanho);
return tamanho;
}
////////////////////////////////////////////////////////////////////////////////
int busca(int *vetor, int Busca, int tamanho)
{
for(int i=0; i<tamanho; i++)
{
if(Busca == vetor[i])
return i; //valor foi localizado no vetor na posição i
}
return -1; //valor não localizado no vetor
}
////////////////////////////////////////////////////////////////////////////////
void mult_k(int *vetor, int k, int tamanho)
{
for (int i=0; i<tamanho; i++)
{
vetor[i]=vetor[i]*k;
}
}
////////////////////////////////////////////////////////////////////////////////
int maior(int *vetor, int tamanho, int Maior)
{
for (int i=0; i<tamanho; i++)
{
if(vetor[i]>Maior)
{
Maior=vetor[i];
}
}
return Maior;
}
////////////////////////////////////////////////////////////////////////////////
int menor(int *vetor, int tamanho, int Menor)
{
for (int i=0; i<tamanho; i++)
{
if(vetor[i]>Menor)
{
Menor=vetor[i];
}
}
return Menor;
}
////////////////////////////////////////////////////////////////////////////////
int main()
{
int op;
printf(" feito por Jose Renato da Silva Barros\n");
printf("\nESCOLHA UM PROCEDIMENTO\n\n 1 - Buscar no vetor\n 2 - Multiplica vetor");
printf("\n 3 - Maior valor no vetor\n 4 - Menor valor do vetor\n\n ");
scanf("%d",&op);
switch (op)
{
case 1:
{
int tamanho;
tamanho=tamanho_vetor(tamanho);
int vetor[tamanho], Busca;
for (int i=0; i<tamanho; i++)
{
printf("\ninforme um valor para a posicao %d: ",i);
scanf("%d",&vetor[i]);
}
printf("\ninforme o valor a ser buscado: \n");
scanf("%d",&Busca);
int resposta=busca(vetor, Busca, tamanho);
if (resposta != -1)
printf("o numero %d esta no indice: %d \n",Busca ,resposta);
else
printf("o numero %d não foi localizado no vetor.\n",Busca);
}
break;
case 2:
{
int tamanho;
tamanho=tamanho_vetor(tamanho);
int vetor[tamanho],k;
for (int i=0; i<tamanho; i++)
{
printf("\ninforme um valor para a posicao %d: ",i);
scanf("%d",&vetor[i]);
}
printf("\ninforme o valor a multiplicar: \n");
scanf("%d",&k);
// mult_k(&vetor, k, tamanho)
}
break;
case 3:
{
int vetor,tamanho,Maior;
int resposta=maior(&vetor, tamanho, Maior);
printf("o maior numero digitado foi: %d",resposta);
}
break;
case 4:
{
int vetor,tamanho,Menor;
int resposta=menor(&vetor, tamanho, Menor);
printf("o menor numero digitado foi: %d",resposta);
}
break;
}
system("PAUSE");
return EXIT_SUCCESS;
}
fico muito grato com as colaborações. imagino que seja um problema besta mas não acho.
Pergunta
NatinDF
sempre que tento acessar o case 3 ou o case 4(que são cópias um do outro), aparece a imagem de erro do windows. segue o código:
#include <cstdlib> #include <iostream> using namespace std; //////////////////////////////////////////////////////////////////////////////// int tamanho_vetor(int tamanho) { printf("\ninforme o tamanho do vetor: \n"); scanf("%d",&tamanho); return tamanho; } //////////////////////////////////////////////////////////////////////////////// int busca(int *vetor, int Busca, int tamanho) { for(int i=0; i<tamanho; i++) { if(Busca == vetor[i]) return i; //valor foi localizado no vetor na posição i } return -1; //valor não localizado no vetor } //////////////////////////////////////////////////////////////////////////////// void mult_k(int *vetor, int k, int tamanho) { for (int i=0; i<tamanho; i++) { vetor[i]=vetor[i]*k; } } //////////////////////////////////////////////////////////////////////////////// int maior(int *vetor, int tamanho, int Maior) { for (int i=0; i<tamanho; i++) { if(vetor[i]>Maior) { Maior=vetor[i]; } } return Maior; } //////////////////////////////////////////////////////////////////////////////// int menor(int *vetor, int tamanho, int Menor) { for (int i=0; i<tamanho; i++) { if(vetor[i]>Menor) { Menor=vetor[i]; } } return Menor; } //////////////////////////////////////////////////////////////////////////////// int main() { int op; printf(" feito por Jose Renato da Silva Barros\n"); printf("\nESCOLHA UM PROCEDIMENTO\n\n 1 - Buscar no vetor\n 2 - Multiplica vetor"); printf("\n 3 - Maior valor no vetor\n 4 - Menor valor do vetor\n\n "); scanf("%d",&op); switch (op) { case 1: { int tamanho; tamanho=tamanho_vetor(tamanho); int vetor[tamanho], Busca; for (int i=0; i<tamanho; i++) { printf("\ninforme um valor para a posicao %d: ",i); scanf("%d",&vetor[i]); } printf("\ninforme o valor a ser buscado: \n"); scanf("%d",&Busca); int resposta=busca(vetor, Busca, tamanho); if (resposta != -1) printf("o numero %d esta no indice: %d \n",Busca ,resposta); else printf("o numero %d não foi localizado no vetor.\n",Busca); } break; case 2: { int tamanho; tamanho=tamanho_vetor(tamanho); int vetor[tamanho],k; for (int i=0; i<tamanho; i++) { printf("\ninforme um valor para a posicao %d: ",i); scanf("%d",&vetor[i]); } printf("\ninforme o valor a multiplicar: \n"); scanf("%d",&k); // mult_k(&vetor, k, tamanho) } break; case 3: { int vetor,tamanho,Maior; int resposta=maior(&vetor, tamanho, Maior); printf("o maior numero digitado foi: %d",resposta); } break; case 4: { int vetor,tamanho,Menor; int resposta=menor(&vetor, tamanho, Menor); printf("o menor numero digitado foi: %d",resposta); } break; } system("PAUSE"); return EXIT_SUCCESS; }fico muito grato com as colaborações. imagino que seja um problema besta mas não acho.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.