Pulse 0 Denunciar post Postado Abril 17, 2015 (MAT 88) Dada uma seqüência de n números reais, determinar os números que compõem a seqüência e o número de vezes que cada um deles ocorre na mesma. Exemplo: n = 8 Seqüência: -1.7, 3.0, 0.0, 1.5, 0.0, -1.7, 2.3, -1,7 Saída: -1.7 ocorre 3 vezes 3.0 ocorre 1 vez 0.0 ocorre 2 vezes 1.5 ocorre 1 vez 2.3 ocorre 1 vez Segue uma resolução, já fiz teste de mesa com ela, já olhei o código várias vezes mas não consegui entender o que acontece. Alguém poderia me explicar? #include <stdio.h> #define MAX 100 int main() { int n, /* numero de elementos da sequencia */ i, j, comp, /* comprimento corrente do vetor seq */ conta, vezes; float seq[MAX]; printf("\nDigite o numero de elementos da sequencia: "); scanf("%d", &n); printf("Digite uma sequencia de %d numeros reais: ", n); for (i = 0; i < n; i++) scanf("%f", &seq[i]); for (i = 0; i < n; i++) { /* conta o numero de vezes que seq[i] aparece no vetor a partir da posição i */ vezes = 1; j = i + 1; while (j < n) if (seq[j] != seq[i]) j++; else { vezes++; /* quando repete, remove */ n--; seq[j] = seq[n]; } printf("%f ocorre %d vezes\n", seq[i], vezes); } return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Abril 17, 2015 mas não consegui entender o que acontece E o que exatamente acontece? O que você quer com esse tópico? Compartilhar este post Link para o post Compartilhar em outros sites