Ir para conteúdo
julianopan

Ajuda com erro

Recommended Posts

Boa noite , não consigo achar o erro na validação das mensagens, alguém me da uma luz

 

#include<stdio.h>
#include<stdlib.h>
#include<locale.h>
#include<math.h>
int main(void)
{
    setlocale(LC_ALL,"Portuguese");
    float p1,p2,p3,media;
    printf("Digite três notas:\n");
    scanf("%f %f %f", &p1, &p2, &p3);
    media = (p1*2 + p2*3 + p3*5)/(2+3+5);
    if (media >=8,0 && media <=10)
        printf("A nota do aluno é: A \n");
    else if (media >=7,0 && media <7,5)
        printf("A nota do aluno é: B \n");
    else if (media >=6,0 && media <6,5)
        printf("A nota do aluno é: C \n");
    else if (media >=5,0 && media <5,5)
        printf("A nota do aluno é: D \n");
    else if (media >=0,0 && media <4,5)
        printf("A nota do aluno é: E \n");
    else
        printf("Verfique as notas! \n");
    return(0);
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@julianopan, esse teu código tem dois problemas: um sintático e um de lógica.

 

1º) Tu deve alterar a vírgula por ponto no número, para separar as casas decimais;

 

2º) Essa tua validação não compreende alguns casos. Por exemplo:  se o cara ficar com média 7.7, ele não vai cair em nenhum dos if's, vai ir pro else de "Verifique as notas!".

Faça o teste aí: entre com com as notas 5, 5 e 4. A média é ~4.7, que não é compreendido pela tua validação. Então essa nota, que em tese é uma nota válida, daria erro.

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Defina a localização da forma abaixo e continue usando o ponto para separar as casas decimais ao digitar um valor:

setlocale(LC_CTYPE, "Portuguese");

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por alyssonw2silva
      Sou novo aqui e estou com o seguinte código 
      function buscar($query) { include_once 'conn.php'; if ($resulte2 = mysqli_query($conn, $query)) { while($row2 = mysqli_fetch_array($resulte2)) { print "<option value='".$row2[0]."'>".$row2[1]."</option>"; }; }; ele e para preencher os campos do meu select está funcionando mas como tenho outro select o primeiro roda agora o segundo da erro quando eu desabilito o primeiro  o segundo select e preenchido 
       
      estou chamando a mesma função para ambos os selects mas o parâmetro $query e diferente 
       
    • Por kaiquefigui
      sempre que uso o comando 'insert into cliente values...' diz que minha query foi atualiza e as linhas foram afetadas porem quando utilizo o comando 'desc cliente' não vejo alterações, como posso resolver esse problema?
      CREATE TABLE CLIENTE( NOME VARCHAR(30), SEXO CHAR(1), CPF CHAR(11), EMAIL VARCHAR(50), TELEFONE VARCHAR(30), ENDEREÇO VARCHAR(100) ); SHOW TABLES; DESC CLIENTE; INSERT INTO CLIENTE VALUES('KAUAN','M','23453678911','KAUAN@HOTMAIL.COM','254896534','ANTONIO HERDEIRO - SÃO PAULO - SP'); INSERT INTO CLIENTE VALUES('ADRIANA','F','24587630894','ADRIANA@HOTMAIL.COM','48652479','ANTONIO HERDEIRO - SÃO PAULO - SP'); INSERT INTO CLIENTE VALUES('KAIQUE','M','34221176809','KAIQUE@HOTMAIL.COM',NULL,'ANTONIO HERDEIRO - SÃO PAULO - SP'); INSERT INTO CLIENTE(NOME,SEXO,CPF,EMAIL,TELEFONE,ENDEREÇO) VALUES('MARCELA','F','15489652011','MARCELO@HOTMAIL.COM','245826157','ANTONIO HERDEIRO - SÃO PAULO - SP');  
    • Por Eduarda Lang Duarte
      O windows diz que não pode encontrar programas da Office 2010, eu ja tentei ir no Regedit e renomear o Office como Office.old e não funcionou, tentei reparar mas sempre aparece que não acha uma dll diferente. Eu já vi várias pessoas com o mesmo problema que eu, e disseram que é vírus, como eu resolvo? É minha primeira vez nesse site, se tiver algo errado, me falem que eu arrumo.
    • Por isaque_cb2
      Boa noite, estou postando qui por que pesquisei e não achei nada que ajudasse... bem, criei um banco de dados para armazenar meus projetos e carrega-los dinamicamente com o php, deu certo, mas quando tem alguma acentuação no texto ele retorna "�"... 
      ~Grato desde Já~
    • Por ammorei
      Oi Pessoal, blz?!?!?
       
      Estou precisando da ajuda de vocês novamente.
      Alguém poderia analisar meu código e verificar o que estou fazendo errado. O código abaixo só me retorna 0, sendo que se eu der o mesmo comando no MySQL ele me mostra os valores.
       
      <?php $con=mysqli_connect("localhost","root","root1","retencao_alunos"); mysqli_set_charset($con, 'utf8'); // Check connection if (mysqli_connect_errno()) { echo "Falha na Conexão com o BD: " . mysqli_connect_error(); } echo "<h2>WHILE</h2>"; $m = 1; while($m<=12) { $sel = "SELECT count(*) AS quant FROM retencao WHERE ano=2018 AND month(data)='.$m.'"; $sql = mysqli_query($con,$sel); $row = mysqli_fetch_array($sql); $tot = $row['quant']; echo $tot; echo ", <br>"; $m++; } mysqli_close($con); ?> Lembrando que sou iniciante, então fiquem a vontade para sugerir melhorias.
      Fico no aguardo... Obrigado!!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.