TOPIC

PROBLEM 1186 - URI Fórum 1.0

URI Online Judge asked 7 years ago

URI Online Judge Fórum 1.0

MOD

This topic was solved and cannot recieve new replies.

  • Felipe da SIlva Gouveia replied 3 years ago

    eu tava com mto sono e n prestei atenção kkkkk, mas consegui fazer. Vlw pelo toque.

  • Unknown replied 3 years ago

    Chegou a testar? Tem alguns exemplos de entrada no uDebug que podem ajudar.

  • Felipe da SIlva Gouveia replied 3 years ago

    alguem sabe dizer pq ta dando WA?

    #include <stdio.h>
    main(){
        char O;
        double m[12][12], soma=0.0, num=0.0, den=0.0;
        int i, j;
        scanf(" %c", &O);
        for(i=0;i<=11;i++){
            for(j=0;j<=11;j++){
                scanf("%lf", &m[i][j]);
            }
        }
        if(O=='S'){
            for(i=1;i<=11;i++){
                for(j=11;j<=11;j++){
                    soma=soma+m[i][j];
                }
                j=j-2;
            }
            printf("%.1lf\n", soma);
        }else{
            for(i=1;i<=11;i++){
                for(j=11;j<=11;j++){
                    num=num+m[i][j];
                    den++;
                }
                j=j-2;
            }
            printf("%.1lf\n", num/den);
        }
    }
  • Maxwell Oliveira replied 4 years ago

    Galera, não estou conseguindo resolver este problema, onde está errado no meu código?

    include include

    int main() { double mat[12][12];

    int i,j,cont=0;
    double soma=0,media=0;
    char op;
    
    scanf(" %c",&op);
    
    for(i=0; i<4; i++)
    {
        for(j=0; j<4; j++)
        {
            scanf("%lf",&mat[i][j]);
        }
    }
    for(i=0; i<4; i++)
    {
        for(j=3-i+1; j>=0; j--)
        {
                soma+=mat[i][j];
                cont++;
    
        }
    
    }
    
    if(op=='S')
        printf("Soma: %.1lf\n",soma);
    
    else if(op == 'M')
     {
         media=soma/(double)cont;
         printf("%.1lf\n",media);
     }
    
    return 0;

    }

  • Erich Rodrigues replied 6 years ago

    Você só errou ao fazer a seguinte divisão:

    printf("%.1f\n",(tot/cont));

    Pois as variáveis são de tipos diferentes, o que acarreta em um cast que nesse caso está mudando o resultado da operação. Basta tratar a varável cont como float.

    MOD
  • welisson wilson oliveira replied 6 years ago

    O que tem de errado aqui, estou recebendo WA. Lembrando que eu programo em Java e estou me aventurando em C++ :p

    #include <stdio.h>
    
    main(){
    
        char O[1];
        float M[12][21];
        float tot = 0;
        bool b = true;
        int cont;
    
        do{
            scanf("%s",&O);
            if(O[0] == 'S'){
                b = false;
            }
            if(O[0] == 'M'){
                b = false;
            }
        }while(b);
        for(int i = 0; i < 12; i++){
            for(int j = 0; j < 12; j++){
                scanf("%f",&M[i][j]);
            }
        }
        int dec = 11;
        for(int i = 1; i < 12; i++){
            for(int j = dec; j < 12; j++){
                tot += M[i][j];
                cont++;
            }
            dec--;
        }
        if(O[0] == 'S'){
            printf("%.1f\n",tot);
        }else{
            printf("%.1f\n",(tot/cont));
        }
    
        return 0;
    }