Ir ao conteúdo
  • Cadastre-se

Eduardo_Braz

Membro Pleno
  • Posts

    98
  • Cadastrado em

  • Última visita

Tudo que Eduardo_Braz postou

  1. Estou tentando reinstalar a rom do meu android modelo SM-G600FY é um Samsung Galaxy On7 toda vez que eu tento tá esse erro.
  2. if(cont >= k){ printf("NAO\n"); for(i = 1; i <= n; i++){ if(vetor[i] <= 0){ printf("%d\n", vetor[i]); } } } O erro está nessa parte o iniciado pede os índices das ocorrências quando a condição for verdadeira. Quando eu troco o vetor somente por i ele imprime 1 e o 4 não entendo porque alguém poderia me ajudar nessa parte. Entrada: 4 1 0 -1 2 1 (Índice 1 é o 0) (Índice 2 é o -1) (Índice 3 é o 2) (Índice 4 é o 1) Quando eu faço a troca: Saí assim: 1 4 O correto pelo o que eu coloquei acima séria: 1 2 Eu teria que colocar em ordem decrescente tudo o que eu já testei não funcionou, gostaria ver com vocês. Por fim ficaria assim: 2 1
  3. @devair1010Não conseguir pegar os índices. adicionado 9 minutos depois ele só pega o 1 e 4 quando o teste: Entrada: 4 2 0 -1 2 1 Saída: 1 2 e ordenar o índice em ordem decrescente adicionado 10 minutos depois
  4. Assim se eu colocar para imprimir o i então pode dá certo ? adicionado 4 minutos depois Fiz o teste mais não funcionou.
  5. Muito obrigado pela a dica de postagem, vou estudar o seu código aqui muito obrigado mesmo adicionado 3 minutos depois nessa parte tem como eu pegar o indice onde os números aparece?
  6. Eu meio que arrumei porém: A saída que eu conseguir com a entrada sendo 10 4 -93 -86 49 -62 -90 -63 40 72 11 67: NAO 1 3 4 5 10 e a saída que era para ser: Saída NAO 6 5 4 2 1 #include <stdio.h> int main(){ int n, k, i, j, cont, vetor[1000], aux, po; while (1){ scanf("%d %d", &n, &k); if(n <= 1000 && n >= 0 && k <= 1000 && k >= 0){ break; } } for(i = 0; i < n; i++){ scanf("%d", &vetor); } for(i = 0; i < n; i++){ if(vetor <= 0){ cont++; } } if(cont >= k){ printf("NAO\n"); for(i=1; i<=n; i++){ if (vetor <= 0){ aux = vetor; po=i; printf("%d\n", po); } } } else{ printf("SIM\n"); } }
  7. Eu encontrei o erro só que eu não sei resolver é o seguinte ele tem que achar o índice dos números igual ou menor a ZERO só que não estou conseguindo pegar os mesmo... adicionado 1 minuto depois Em ordem decrescente..
  8. #include <stdio.h> void troca(int* a, int*b){ int aux; aux=*a; *a=*b; *b=aux; } void insertionSort(int n, int vet[]){ int i,j, menor, indMenor; for (i=0; i<n-1; i++) { menor=vet; indMenor=i; for(j=i;j<n;j++){ if (vet[j] > menor) { menor=vet[j]; indMenor=j; } } troca(&vet, &vet[indMenor]); } } int main(){ int n, k, i, j, cont, vetor[1000]; while (1){ scanf("%d %d", &n, &k); if(n <= 1000 && n >= 0 && k <= 1000 && k >= 0){ break; } } for(i = 0; i < n; i++){ scanf("%d", &vetor); } for(i = 0; i < n; i++){ if(vetor > 0){ cont++; } } if(cont >= k){ printf("NAO\n"); for(i = 0; i < n; i++){ insertionSort(n, vetor); if(vetor > 0){ printf("%d\n", vetor); } } } else{ printf("SIM"); } } De 11 teste passou em apenas 4
  9. Um professor X tem uma turma de N alunos. Frustrado com a falta de disciplina, ele decide cancelar a aula se menos de K alunos estão presentes quando a aula começa. Dado o tempo de chegada de cada aluno, determinar se a aula é cancelada. Caso a aula não seja cancelada, imprima uma lista com os alunos que chegaram antes do início da aula em ordem contrária à mostrada na entrada. Entrada A primeira linha apresenta dois números inteiros separados por um espaço: N (alunos da turma) e K (mínimo de presenças para que a aula não seja cancelada), com 0 ≤ N, K, ≤ 1000. Na segunda linha há N inteiros separados por espaços (A1 , A2 ,... , An ) descrevendo os tempos de chegada para cada aluno. Suponha que esta ordem seja a mesma da lista de presença do professor, com o primeiro aluno descrito na entrada sendo o aluno 1 e assim por diante. Nota: horários de chegada não-positivos (Ai ≤ 0) indicam que o aluno chegou cedo ou na hora; horários de chegada positivos (Ai>0) indicam o aluno chegou Ai minutos tarde. Saída O programa apresenta uma mensagem com a palavra “SIM” se a aula é cancelada, e “NAO” caso contrário. Após imprimir a mensagem quebre uma linha. Se a aula não for cancelada, imprima os M alunos presentes antes do início da aula (ou seja, com Ai ≤ 0) na ordem contrária da lista de entrada.
  10. Por Favor O erro é o seguinte quando tem um número negativo ele está imprimindo exemplo de entrada e sua divada saída: A condição do não e sim é a seguinte se o numero k nesse caso de teste é o 2. O vetor tem que conter número maior que ZERO Entrada: 4 2 0 -1 2 1 Saída: NAO 2 1 Código #include <stdio.h> void troca(int* a, int*b){ int aux; aux=*a; *a=*b; *b=aux; } void insertionSort(int n, int vet[]){ int i,j, menor, indMenor; //para cada elemento i do vetor for (i=0; i<n-1; i++) { menor=vet; indMenor=i; //procurar o i-esimo menor guardar o seu valor e de seu indice, respectivamente em menor e indMenor for(j=i;j<n;j++){ if (vet[j] > menor) { menor=vet[j]; indMenor=j; } } //O i-esimo menor esta na variavel menor trocar de posicao os elementos vet com vet[indMenor] troca(&vet, &vet[indMenor]); } } int main(){ int n, k, i, j, cont, vetor[1000]; while (1){ scanf("%d %d", &n, &k); if(n <= 1000 && n >= 0 && k <= 1000 && k >= 0){ break; } } for(i = 0; i < n; i++){ scanf("%d", &vetor); } for(i = 0; i < n; i++){ if(vetor > 0){ cont++; } } if(cont >= k){ printf("NAO\n"); for(i = 0; i < n; i++){ insertionSort(n, vetor); printf("%d\n", vetor); } } else{ printf("SIM\n"); } }
  11. @devair1010 Pode só que eu não sei matriz adicionado 6 minutos depois Não tenho ideia alguma de Matriz
  12. @devair1010 Foi baseado eu acho
  13. Dada uma sequência de N números entre 0 e 100. Determine qual o valor de maior frequência. Caso haja mais de um valor tenha a maior frequência, mostre o menor deles. Entrada Na primeira linha há um inteiro N, 1 N 1000000, representando a quantidade números. Nas N linhas seguintes haverá um número natural entre 0 e 100 inclusive por linha. Saída O programa gera apenas duas linhas. Na primeira dela mostre qual foi o valor com maior frequência. E na segunda linha, mostre a quantidade de vezes que esse número apareceu na sequência de valores. Após a impressão deste último valor quebre uma linha. Caso haja mais de um valor tenha a maior frequência, mostre o menor deles. Exemplo Entrada 10 1 7 4 29 7 4 7 8 7 29 Saída 7 4 Código <- Não sei porque funciona //Programa 13 #include <stdio.h> int main(){ int vetor[1000000], i, j, n, aux, k, total; while(1){ scanf("%d",&n); if(n <= 1000000 && n > 0){ break; } } for (i = 0; i < n; i++){ scanf("%d", &vetor); } for (i = 0; i < n; i++){ for(j = i + 1; j < n; j++){ if (vetor == vetor[j]){ aux = vetor[j]; } } } for (k = 0; k < n; k++){ if (aux == vetor[k]){ total++; } } printf("%d", aux); printf("\n%d", total); }
  14. @AdrianoSiqueira Muito obrigado pela a sua ajuda
  15. Atualizei o Código mais ainda tem um erro ele imprime se tiver um número igual o maior na primeira entrada ainda imprime ele é só isso pelo os teste que eu fiz adicionado 1 minuto depois Atualizei o Código mais ainda tem um erro ele imprime se tiver um número igual o maior na primeira entrada ainda imprime ele é só isso pelo os teste que eu fiz
  16. Alguém poderia me ajudar com essa o código está praticamente feito falta apenas uma correção. Faça um programa que receba vários vetores e informe para cada um deles qual o maior elemento e o índice (da primeira ocorrência) em que encontra-se tal elemento. Entrada O programa possui vários casos de testes. A primeira de cada caso contem um inteiro N, 1 < N ≤ 10000, representando o tamanho do vetor. A segunda linha conterá N inteiros entre 0 e 1000, representando os N elementos do vetor. A entrada termina quando N=0. Saída O programa gera N linhas de saída, com dois inteiros separados por um espaço em branco. O primeiro inteiro é o índice da primeira ocorrência do maior elemento do vetor e o segundo inteiro é o maior valor do vetor. Após a impressão de cada saída, inclusive a última, quebre uma linha. Exemplo Entrada 10 6 54 7 3 73 6 67 23 6 9 5 9 8 7 6 5 8 0 1 2 3 4 5 6 7 0 Saída 4 73 0 9 7 7 Código <- O erro é o seguinte se tiver o maior número no mesmo vetor ele imprime o índice dos outros também não apenas o primeiro //Programa 05 #include <stdio.h> #include <limits.h> int main(){ int n, vetor[1000], maior, menor, i, j, k, aux; maior = INT_MIN; aux = 1; while(aux > 0){ scanf("%d", &n); for (i = 0; i < n; i++){ scanf("%d", &vetor); } for (i = 0; i < n; ++i) { if (i == 0){ maior = vetor; }else if(vetor > maior){ maior = vetor; } } for (k = 0; k < n; k++) { if (maior == vetor[k]) { printf("%d %d\n", k, maior); } } aux = n; } }
  17. @brund321 Muito obrigado vou estudar ele
  18. @brund321 Muito obrigado adicionado 5 minutos depois adicionado 14 minutos depois @brund321 Ele ainda está com erro no último for #include <stdio.h> int main(){ int aux, v, n, vetor[1000], i, k, j, total, l; while(1){ scanf("%d",&n); if(n <= 1000){ break; } } for (i = 0; i < n; i++){ scanf("%d", &vetor); } scanf("%d", &k); for (j = 0; j < n; j++){ if(k >= vetor[j]){ total ++; } } printf("%d\n", total); } adicionado 14 minutos depois Nesse
  19. @brund321 Muito obrigado vou fazer aqui para ver eu consigo
  20. @brund321 Estou bugado não estou conseguindo realizar essa ainda
  21. @brund321 Assim compreendi adicionado 9 minutos depois Assim? #include <stdio.h> int main(){ int aux, v, n, vetor[1000], i, k, j, total, l; while(v == 0){ scanf("%d",&aux); if(aux >= 1 && aux <= 1000){ n = aux; v = 1; } else{ scanf("%d",&aux); } } for (i = 0; i < n; i++){ scanf("%d", &vetor); } scanf("%d", &k); for (j = n; j >= 0; j--) { if (k >= vetor[j]) { total++; } } printf("%d\n", total); }

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!