Ir para conteúdo
Fórum Script Brasil

RonaldoRG

Membros
  • Total de itens

    259
  • Registro em

  • Última visita

Tudo que RonaldoRG postou

  1. Bom, aqui não apareceu a mensagem "Matriz não e triangular". Deu certo aqui. Testei 3X3, 4X4. Qual o erro que aparece ai? Pelo seu primeiro post, entendi que era pra verificar se era triangular inferior. Mas pelo seu código agora, você quer ver também se é triangular superior. Então tem que modificar o código. A não ser que se verifique primeiro pra superior e depois pra inferior.
  2. Acho que entendi. Você quer ver se a matriz é triangular superior. for(i = 1; i < MAX_LINHA; i++) for(j = 0; j < i; j++) { if(matriz[i][j] != 0) { printf("Matriz não e triangular"); break; } } Vê se funciona ai.
  3. Ok, é que eu não mexo com linguagem de algoritmo. Tive que ver umas apostilas pra saber como faz o loop. Foi mal. Abraço.
  4. Quanto a sintaxe tá errada mesmo: matriz[l][c] = (l > c) == 0 ??? Não entendi que comparação você quer fazer. Explica melhor.
  5. Nossa ficou grande hein. Não era melhor colocar um loop ai não algoritmo "Especial" // Função : Mostrar Quantas Vezes a Letra "A" Aparece Na Frase! // Autor : Tiago Mendes Cavalcanti // Data : 19/3/2010 // Seção de Declarações var Frase:Caracter Vezes:Inteiro i:Inteiro inicio // Seção de Comandos Escreval("Crie Uma Frase Qualquer: ") Leia(Frase) Para i := 1 até 100 faça Se Copia (Frase, i, 1) = "A" então Vezes := Vezes + 1 Escreval("A letra (A) aparece", Vezes, " vezes na frase.") fimalgoritmo Não há necessidade do senao no se. Usando loops para processos repetidos fica melhor. Imagina se você tivesse que procurar em um texto de 10 páginas. Outra coisa ao invés de 100 você coloca uma função que retorna o número de letras da frase. Abraço.
  6. RonaldoRG

    Erro com else if

    Acho que já te respondi em outro tópico. Quando se quer executar mais de um comando tem que botar as chaves { }. Tem tambem erros na arrumação do seu if. if (idade1 > idade2) { printf("\n A pessoa mais velha e: %s ", nome1); printf("com %d anos: \n\n", idade1); } else if(idade1 < idade2) /// Acrecentei mais um if { printf("\n A pessoa mais velha e: %s ", nome2); printf ("com %d anos: \n\n", idade2); } else if (idade1 == idade2); { idade=idade1; /// Se as idades já são iguais, pra que igualar elas ??? printf ("\n %s e %s estao com a mesma idade. %d Anos. \n\n", nome1, nome2,idade); } Abraço.
  7. Em relação ao gets, alguns compiladores emitem um aviso que é uma função perigosa e tal. Eu uso o cin.getline da biblioteca iostream: #include<iostream> ... using namespace std; ... cin.getline(nome1, 30); /// 30 é o numero de caracteres que ele lê na tela ... Quanto as chaves, elas servem pra delimitar um bloco de comando. Se você quiser que seu if execute mais de um comando então você deve colocar as chaves. Se não colocar ele executa somente o primeiro comando depois do if. Isso serve para o if, for e outros. Abraço.
  8. Não entendi o erro no gets, explique melhor. Foi um erro de compilação? Descreva a saida do compilador. Posta o código de como você fez o gets.
  9. A frase vai ser armazenada em um vetor. Ai você percorre o vetor e se o valor da posição corrente for A então soma 1 ao contador. Depois mostra o valor do contador. Abraço.
  10. Para ler strings você deve declarar um vetor de char e colocar %s no scanf e no printf: char nome1[30], nome2[30]; ... scanf("%s", nome1); ... printf("\n A pessoa mais velha e:%s ", nome1); Agora scanf não lê espaços entre palavras. Para isso use a função gets. Abraço.
  11. Bom do modo que eu falei: while (filme[i].valor <> 4.90) and (filme[i].valor <> 3.90) do Funcionou direitinho compilado em C++. Não sei como você tá fazendo ai. As vézes a comparação de floats usando o = ou <> falha, devido aos erros numéricos que o computador tem. Tenta fazer a comparação assim: ValorAbsoluto( filme.valor - 4.90 ) > 10^(-15) A expressão acima verifica se filme.valor está distante de 4.90. É só uma dica. Abraço.
  12. Essa parte tem alguns erros: for (i%3; i<=n2; i++) <= i%3 ????, geralmente aqui se coloca a inicialização do contador { printf ("%d\n", &i); <= &i ?????, no printf não bota o &, isso coloca no scanf } Tenta esse código: for (i = n1; i <= n2; i++) { if( i % 3 == 0) printf ("%d\n", i); } Abraço.
  13. Coloca um exit(0) no default do switch, assim quando não for nenhum valor dos cases ele fecha o programa. ... default: exit(0); ... Agora não me lembro qual biblioteca é exit, acho que é stdlib.h, não me lembro. Abraço.
  14. Tenta usar and ao invés de or: while (filme[i].valor <> 4.90) and (filme[i].valor <> 3.90) do Do modo que tava a expressão "(filme.valor <> 4.90) or (filme.valor <> 3.90)" sempre dava verdadeira. Pois se o valor fosse 4.90 seria falsa antes do "or" mas seria verdadeira depois do "or", resultando verdadeira a expressão. E se fosse 3.90 seria a mesma coisa.
  15. RonaldoRG

    EXERCÍCIOS EM C

    Essa fórmula veio do enunciado do seu problema. Exatamente, limita o número de casa decimais em 2.
  16. Você guarda os valores dessas variáveis em uma matriz de 10 por 5, pois são 10 valores para 5 variáveis. Ai depois você imprime esses valores da matriz usando o printf em formato de tabela. Abraço.
  17. Tenta começar a substring de 10, porque 8 pega o espaço: ... int amount = atoi(command.substr(10, 3).c_str()); ... EDIT: Respondi tarde, que bom que deu certo. Abraço.
  18. Vai o esquema do switch: ... int cargo; switch(cargo) { case 1: ... break; case 2: ... break; ... default: } Abraço.
  19. RonaldoRG

    algoritmos em c

    Vai o esquema do switch: ... int voto; switch(voto) { case 1: ... break; case 2: ... break; ... default: } Abraço.
  20. Pra repetir você faz um loop. ... while(1) /// Nesse caso vai repetir até você fechar o programa { printf("Digite um comando: "); cin >> command; getchar(); /// Pra quê esse comando aqui? cout << "\n\nComando digitado: " << command << "\n"; } ... Como você tá usando o tipo string você pode comparar com o ==. if(command == "Oi") { /// Coloca os comandos } Abraço.
  21. Não entendi direito o que você quer, mas no DEV C++ se não tiver um comando que pause o programa, ele se fecha no final da execução. Muitos acham ruim o system("pause"), eles aconselham usar o getchar ou scanf. Caso não seja essa sua dúvida, explique melhor. Abraço.
  22. Deve ser long float, sei lá. Só sei que pra double só funciona com isso. Abraço.
  23. RonaldoRG

    EXERCÍCIOS EM C

    No printf você esqueceu de colocar as variáveis A, B e C: printf("Os valores novos para A é %i para B é %i e para C é %i\n", A, B, C);
  24. Eu troquei o float por double e botei %lf no scanf e funcionou aqui: ... double numero; ... scanf("%lf", &numero); ... Vê se funciona ai. Abraço.
  25. A iostream é para C++, pra usar a stdio.h o código é o mesmo, só muda a função de saída: ... printf("Massa final: %f gramas\nTempo: %d segundos" , massa, tempo*50); ... Você pode ver melhor sobre as bibliotecas stdio.h e conio.h e outras em: http://www.cplusplus.com Abraço.
×
×
  • Criar Novo...