Ir ao conteúdo
  • Cadastre-se

Simão.

Membro Pleno
  • Posts

    29
  • Cadastrado em

  • Última visita

Tudo que Simão. postou

  1. não funciona não aparece nada antes aparecia em ordem decrescente, agora não aparece nada é mesmo só o sinal de menor que é para mudar?? #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int i, j; char frase[100], c; printf("Digite uma frase: "); gets(frase); for (i = 0; i < strlen(frase); i++) { for (j = i + 1; j < strlen(frase); j++) { if (frase [i] > frase [j]) { c = frase[i]; frase[i] = frase[j]; frase[j] = c; } } } printf("A ordem da frase e: %s\n", frase); } Já está, fiz dessa forma e funciona!
  2. esqueci me de dizer, eu enganei me, é pra ser na ordem crescente, tenho que trocar quais?? não estou a conseguir
  3. @devair1010 não há uma forma parecida a esta?? #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char frase[100], i, j, c; printf("Digite uma frase: "); scanf("%s", &frase); for (i = 0; i <= strlen(frase); i++) { for (j = i + 1; j <= strlen(frase); j++) { if (frase [i] < frase [j]) { c = i; i = j; j = c; } } } printf("A ordem da frase e: %s\n", frase, i, j); } Ou uma forma de corrigir e pôr a funcionar
  4. O problema é que ainda não dei isso, acho que tenho de fazer de outra forma
  5. #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char frase[100], i, j; printf("Digite uma frase: "); scanf("%s", &frase); for (i = 0; i <= strlen(frase); i++) { for (j = i + 1; j <= strlen(frase); j++) { if (frase [i] < frase [j]) { j = i } } } } Estou a fazer dessa forma, como faço para fazer a troca das variavéis?
  6. Obrigado pela ajuda, o meu professor estava a explicar de outra forma, vou experimentar.
  7. #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char frase[100], i, j; printf("Digite uma frase: "); scanf("%s", &frase); { strlen(frase); for (i = 0; i <= frase; i++) { for (j = i + 1; j <= frase; j++); { if (frase [i] < frase [j]) } } } } Fiz desta forma, mas ainda faltam algumas coisas que não estou a conseguir fazer
  8. Ok vou experimentar, obrigado! #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char frase[100], i; printf("Digite uma frase: "); gets(frase); char ordem(); ordem (frase); } char ordem (char ) for } } Estou completamente perdido, alguém que me possa dar uma ajuda por favor Também não sei como usar o bubble sort
  9. Alguém me ajude com o programa que tenho de fazer, o programa tem que pedir uma frase, e depois diz as letras da frase por ordem alfabética. Não consigo fazer nada, está muito difícil!
  10. Eu ontem pus o programa a funcionar, está feito de outra forma, vou mostrar: #include <stdio.h> #include <stdlib.h> #include <math.h> int perimetroDoTriangulo(int a, int b, int c); float areaDoTriangulo (float a, float b, float c){ float lado1, lado2, lado3; float semiPerimetro = (a + b + c) / 2; lado1 = semiPerimetro - a; lado2 = semiPerimetro - b; lado3 = semiPerimetro - c; semiPerimetro = semiPerimetro * lado1 * lado2 * lado3; semiPerimetro = sqrt(semiPerimetro); return semiPerimetro; } int main() { int perimetro; float lado1, lado2, lado3; printf("Indique o primeiro lado: "); scanf("%f", &lado1); printf("Indique o segundo lado: "); scanf("%f", &lado2); printf("Indique o terceiro lado: "); scanf("%f", &lado3); if (lado1 + lado2 > lado3 && lado1 + lado3 > lado2 && lado2 + lado3 > lado1) { printf("A area do triangulo e: %.1f", areaDoTriangulo(lado1, lado2, lado3)); perimetro = perimetroDoTriangulo(lado1, lado2, lado3); printf("\nO valor do perimetro e: %d", perimetro); } else printf("Os 3 lados não formam um triangulo!\n"); } float areaDoTriangulo(int lado1, int lado2, int lado3){ float semiPerimetro; return semiPerimetro * lado1 * lado2 * lado3; } int perimetroDoTriangulo(int lado1, int lado2, int lado3){ return lado1 + lado2 + lado3; } E ainda fiz com que o programa calculasse também o perímetro do triangulo!!
  11. É desafio pessoal, eu já coloquei essa biblioteca, vou mostrar como ficou #include <stdio.h> #include <stdlib.h> #include <math.h> float areaDoTriangulo (float a, float b, float c){ float lado1, lado2, lado3; float semiPerimetro = (a + b + c) / 2; lado1 = semiPerimetro - a; lado2 = semiPerimetro - b; lado3 = semiPerimetro - c; semiPerimetro = semiPerimetro * lado1 * lado2 * lado3; semiPerimetro = sqrt(semiPerimetro); return semiPerimetro; } int main() { float lado1, lado2, lado3, area; printf("Indique o primeiro lado: "); scanf("%f", &lado1); printf("Indique o segundo lado: "); scanf("%f", &lado2); printf("Indique o terceiro lado: "); scanf("%f", &lado3); printf("A area do triangulo e: %.1f", areaDoTriangulo(lado1, lado2, lado3)); return 0; } float areaDoTriangulo(int lado1, int lado2, int lado3){ float semiPerimetro; return semiPerimetro * lado1 * lado2 * lado3; } como eu faço para o programa acabar caso os lados não formem um triangulo?? #include <stdio.h> #include <stdlib.h> #include <math.h> float areaDoTriangulo (float a, float b, float c){ float lado1, lado2, lado3; float semiPerimetro = (a + b + c) / 2; lado1 = semiPerimetro - a; lado2 = semiPerimetro - b; lado3 = semiPerimetro - c; semiPerimetro = semiPerimetro * lado1 * lado2 * lado3; semiPerimetro = sqrt(semiPerimetro); return semiPerimetro; } int main() { float lado1, lado2, lado3, area; printf("Indique o primeiro lado: "); scanf("%f", &lado1); printf("Indique o segundo lado: "); scanf("%f", &lado2); printf("Indique o terceiro lado: "); scanf("%f", &lado3); if (lado1 + lado2 > lado3 && lado1 + lado3 > lado2 && lado2 + lado3 > lado1) printf("Os 3 lados formam um triangulo!\n"); else printf("Os 3 lados não formam um triangulo!\n"); printf("A area do triangulo e: %.1f", areaDoTriangulo(lado1, lado2, lado3)); return 0; } float areaDoTriangulo(int lado1, int lado2, int lado3){ float semiPerimetro; return semiPerimetro * lado1 * lado2 * lado3; } Eu pus o comando exit(0) a seguir ao else depois do printf e agora o programa nunca calcula a àrea...
  12. Vou tentar aplicar essa fórmula, mas preciso de ajuda. Alguém me pode dizer como posso fazer a parte da raiz quadrada?
  13. A formula de heron?? Ainda não dei essa fórmula
  14. Então tenho que saber primeiro que tipo de triangulo é??
  15. Multiplicar a base pela altura e dividir por dois, sim eu sei
  16. Precisava que o programa calculasse a área de um triangulo apenas sabendos 3 lados indicados. #include <stdio.h> #include <stdlib.h> int areaDoTriangulo(int A, int B, int C); int main() { float lado1, lado2, lado3, area; printf("Indique o primeiro lado: "); scanf("%f", &lado1); printf("Indique o segundo lado: "); scanf("%f", &lado2); printf("Indique o terceiro lado: "); scanf("%f", &lado3); if ((lado1 <= lado2) && (lado1 <= lado3) && (lado2 <= lado3)) area = (lado1 * lado2) / 2; if ((lado2 <= lado3) && (lado1 <= lado3) && (lado2 <= lado1)) area = (lado2 * lado3) / 2; area = areaDoTriangulo (lado1, lado2, lado3); printf("A area do triangulo e: %.1f", area); return 0; } int areaDoTriangulo(int lado1, int lado2, int lado3){ return ((lado1 * lado2) / 2 || (lado2 * lado3) / 2); }
  17. Preciso de fazer um programa que conte a quantidade de vogais, mas não estou a conseguir. #include <stdio.h> #include <stdlib.h> int main() { int i, s, num = 0; char vogais[100] = "AaEeIiOoUu"; while (*s) { for (i = 0; i < 10; i++) if (*s == vogais[i]) num++; s++; } return num; } Descobri a solução #include <stdio.h> #include <stdlib.h> int main () { int contador = 0, i=0; char frase[1000]; puts ("Digite uma frase: "); gets (frase); while (frase[i] != '\0') { if (frase[i] == 'a' || frase[i] == 'e' || frase[i] == 'i' || frase[i] == 'o' || frase[i] == 'u' || frase[i] == 'A' || frase[i] == 'E' || frase[i] == 'I' || frase[i] == 'O' || frase[i] == 'U') contador++; i++;} printf("A frase %s tem %d vogais. ", frase, contador); }
  18. @.if #include <stdio.h> #include <stdlib.h> int main () { int contador = 1, i; char frase[100]; puts ("Digite uma frase :"); gets (frase); while (frase[i] != '\0'){ if (frase[i] != ' ') contador++; i++;} printf("A frase %s tem %d letras", frase, contador); } fiz desta forma agora, testa aí, tá a funcionar
  19. Tentei fazer um programa que calculasse o número de letras de uma frase, porém não consegui, se alguém me conseguir ajudar agradeço #include <stdio.h> #include <stdlib.h> int main () { int x = 0, contador = 0, i; char frase[100]; puts ("Digite uma frase :"); gets (frase); while (frase[i] != '\0'){ if (frase[i] != '\0') contador++; i++;} printf("A frase %s tem %d letras", frase, contador); }
  20. Simão.

    C Divisores de um número

    @arfneto Já estou a corrigir algumas coisas, obrigado pelo código e pela explicação!!
  21. Simão.

    C Divisores de um número

    @arfneto voltei a ler o que me disse, e agora sim já entendi melhor.
  22. Simão.

    C Divisores de um número

    O meu professor nem sequer falou sobre o programa quando lhe entreguei, mas vou falar com ele sobre isso. Obrigado
  23. Simão.

    C Divisores de um número

    #include <stdio.h> #include <stdlib.h> int main() { int valor, n; printf("Insira um valor para verificar os seus divisores: \n"); scanf("%d", &valor); for (n = 1; n < valor + 1; n++) { if (valor % n == 0) printf("E devisor %d \n", n); } } Eu fiz desta forma e funciona, eu sei que existe mais alguma forma de fazer mas não sei qual, se alguém souber que disponha aqui por favor.
  24. Precisava de fazer um programa que diga os divisores de um número indicado. Agradecia alguma ajuda!

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