Ir ao conteúdo
  • Cadastre-se

linguagem c........vetores(arrays)


JESSICA CAROLINA

Posts recomendados

Descrição

Faça um programa que leia uma sequência de 10 números e informe o total de ocorrências do

último número lido

Formato da Entrada

O programa receberá uma sequência de 10 números inteiros

Formato da Saída

O numero X apareceu N vezes

Onde X é o último número lido e N foi o número de vezes que esse número apareceu. A saída

deve ser seguida de um final de linha

Exemplo de Entrada

34 4 23 5 6 7 4 5 12 4

Exemplo de Saída

O numero 4 apareceu 3 vezes

o meu código foi esse:

#include <stdio.h>

#include <stdlib.h>

int main()

{

int v[10];

int i;

i=0;

do

{

printf("%d\n",i);

scanf("%d",&v);

i++;

}

while(i<=10);

if (v<0)

i=0;

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

{

printf("%d ",v);

}

return 0;

}

mas, ta dando erro.

como posso consertar o meu código, por exemplo, não consigo fazer a parte que o programa pede para o Formato da Saída: O numero X apareceu N vezes

Onde X é o último número lido e N foi o número de vezes que esse número apareceu.

alguem pode me ajudar??

Link para o comentário
Compartilhar em outros sites

Bom eu presumi que os valores o usuario que vai digita porque pela sua logica os numeros seriam de 0 a 10 e nunca iam repetir e no seu codigo você so ta mostrando o vetor.

Tipo pega o valor do ultimo indice do vetor e vai comparando do 0 até ele mesmo se achar soma +1 em um contador.

fiz essa codigo aqui qualquer duvida so falar.

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

int main(){

int v[10];
int i,a=0;

for (i=0;i<10;i++)
{
printf ("Digite o %d numero: ",i+1);
scanf ("%d",&v[i]);
}
for (i=0;i<10;i++)
{
if (v[9]==v[i])
a++;
}
printf ("\n\n");
printf ("O numero %d apareceu %d vezes",v[9],a);
printf ("\n\n");

system ("pause");
return 0;
}

Link para o comentário
Compartilhar em outros sites

Nos loops você usa apenas "i < 10", pois você não quer incluir o i[10].

Lembre-se que um vetor do tipo "int v[10]" possui apenas as posições de v[0] até v[9].

//...
while(i<=10);
//...

O ponto e vírgula marca o final de um comando em c e c++.

Então colocando aquele ponto e vírgula depois do while, você tá terminando ele ali mesmo. Os comandos que aparecem depois dele já não fazem mais parte do while.

Pra contar o número de vezes que um número aparece no vetor, você só precisa de dois loops FOR e uma variável pra gravar a quantidade de vezes que ele se repete.

for (x=0; x < 10; x++) {
    cont = 0; // contador do numero de vezes que v[x] se repete
    for (y=0; y < 10; y++) {        if (v[x] == v[y]) cont++;        // nesse segundo FOR, você percorre todos os números do vetor        // testando se cada um deles é igual ao número do primeiro FOR    }
    printf ("O numero %d se repete %d vezes\n", v[x], cont);
}
Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!