Ir para conteúdo
Fórum Script Brasil
  • 0

Problema simples em C


mperusso

Pergunta

8 respostass a esta questão

Posts Recomendados

  • 0

resultado = (a+b)/2;

( e ) da prioridade a a+b, si tiver (((1+2)+3)+4) sempre tem prioridade o que estiver mais adentro, ou seja que se resolveria 1+2, depois 3+3 e por ultimo 6 + 4. 

Editado por vangodp
Link para o comentário
Compartilhar em outros sites

  • 0

valeu pela ajuda, agr tenho um novo problema, Se eu digito numero quebrado na nota A pula direto pro resultado sem fazer a nota b e se eu boto resultado quebrado na nota B da resultado errado. Ignore as variveis que não to utlizando, vou usar elas dps pra incluir presença

 

int main(){
float a,b,m,aa,am;


        setlocale(LC_ALL,"portuguese");
    printf("Digite nota prova A:\n");
    scanf("%f", &a);
    printf("Digite nota prova B:\n");
    scanf("%f", &b);

    if(a+b>=12){
    m = (a+b)/ 2;
    printf("Aprovado com média= %f",m);}
    else {
    m= (a + b)/2;
    printf("reprovado com média= %f",m);}

 return 0;
}

 

 

Editado por mperusso
Link para o comentário
Compartilhar em outros sites

  • 0

você ta se explicando fatal, não entendo nada. Quando tiver un scanf e for ler um float %f você deve por com ponto, tipo 1.2, por virgula ta errado, C não aceita virgula a menos que seja um string. 
Sobre o %, se o que você quer é imprimir ele no printf use %% duas vezes, pois um só % é considerado o operador modulo que extrae o resto de uma divisão, tipo 5%3 = 2, o 2 é o resultado que você obtêm de usar o operador modulo.
para limitar a um int de no maximo 999 acho que você pode usar scanf("%3d", &numero); mas não sei si da certo isso. en todo caso você pode fazer um laço while que repete a entrada de dados por enquanto que o numero introduzido seja maior de 999. Algo como:

int n = 0;
while(n>999){
printf("Un numero menor que 999\n");
scanf("%d", &n);
}

 

Link para o comentário
Compartilhar em outros sites

  • 0
21 horas atrás, mperusso disse:

valeu pela ajuda, agr tenho um novo problema, Se eu digito numero quebrado na nota A pula direto pro resultado sem fazer a nota b e se eu boto resultado quebrado na nota B da resultado errado. Ignore as variveis que não to utlizando, vou usar elas dps pra incluir presença

 


int main(){
float a,b,m,aa,am;


        setlocale(LC_ALL,"portuguese");
    printf("Digite nota prova A:\n");
        scanf("%f", &a);
    printf("Digite nota prova B:\n");
        scanf("%f", &b);
            m = (a+b)/ 2;

    if(m>=6){
    
    printf("Aprovado com média= %.2f");}
    else {
    
    printf("reprovado com média= %.2f");}

 return 0;
}

// cloca assim porque no else não precisa colocar porque ele já e falso se não der o resultado para aprovado logo sera reprovado,no if (m>=12) vai da errado porque tem q ser >=6 para da certo porque 6 e a media para passar,  espero ter ajudado. vlws

// ass. Felipe=prog++;

 

 

Editado por Felipe=progr++
Achei o erro
Link para o comentário
Compartilhar em outros sites

  • 0
Em 3/31/2016 at 16:00, mperusso disse:

Consegui já, se botar virgula funciona mas se botar tipo 6.75 não.. qual o comando para proibir de botar ponto? e como faço pra limitar o resultado para por exemplo 3 caracteres ? e porcentagem sair com o %?

http://www.cprogressivo.net/2012/11/A-funcao-printf-Caracteres-Especais.html  :D

#include <stdio.h>
#include <stdlib.h>

int main ()

{

//utilize a barra invertida e enfatize o caractere digitando duas vezes.

printf ("imprimindo o \%%");

return 0;

}

 

Em 3/31/2016 at 19:08, vangodp disse:

Quando tiver un scanf e for ler um float %f você deve por com ponto, tipo 1.2, por virgula ta errado, C não aceita virgula a menos que seja um string. 

Quando se usa setlocale (LC_ALL, "Portuguese"), a localidade do computador é mudada para ptbr, por isso a sintaxe dos números reais muda para vírgula 2,2 e não 2.2. Mas isso nem é tão problemático assim.

Link para o comentário
Compartilhar em outros sites

  • 0

Eai pessoal, sou novo aqui no forum e também na linguagem em C.

estou no 2 semestre do curso de SI, e foi passado uma lista de problemas para ser resolvido cujo enuncioado é esse :

---------------------------------------------------------------------------------------------------------------------------

Desenvolva um programa em C que leia dois vetores A e B com 10 elementos cada. Crie
um vetor C, que é a junção dos dois outros vetores. Desta forma, C deverá ter o dobro de
elementos de A e B. Ao final mostrar os dados do vetor C.

-----------------------------------------------------------------------------------------------------------------------------

o que não estou entendendo e: como o vetor C terá o dobro de elementos do A e do B????

segue a linha de codigo:

-----------------------------------------------------------------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
main()
{
    int A[10],B[10],C[10];
    int i;
    
        printf("******************************************\n");
        printf("Digite os numeros abaixo na posicao A e B.\n");
        printf("******************************************\n");
        
    for(i=0;i<10;i++)
    {
        
        printf("\nInsira dez valores inteiros na posicao A:  \n");
        scanf("%d",&A);
       
    }
    for(i=0;i<10;i++)
    {
        printf("\nInsira dez valores inteiros na posicao B:  \n");
        scanf("%d",&B);
        
    }
    
    for(i=0;i<10;i++)
    {
    
    C= A + B;


    printf("\nO vetor C e : %d",C);
    
    }
    return 0;
}

--------------------------------------------------------------------------------------------------------------------------

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...