Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador 1183. Mostrar todas as postagens
Mostrando postagens com marcador 1183. Mostrar todas as postagens

quinta-feira, 14 de janeiro de 2021

URI - 1183 - Acima da Diagonal Principal - Iniciante - C

Plataforma: URI

Problema1183

Enunciado:
Leia um caractere maiúsculo, que indica uma operação que deve ser realizada e uma matriz M[12][12]. Em seguida, calcule e mostre a soma ou a média considerando somente aqueles elementos que estão acima da diagonal principal da matriz, conforme ilustrado abaixo (área verde).

Linguagem: C


Solução:

#include <stdio.h>
#define TAM 12

int main() {

    int i,j;
    char t;
    double m[TAM][TAM], a = 0;

    scanf("%c",&t);

    for (i=0; i<TAM; i++) {
        for (j=0;j<TAM;j++) {
            scanf("%lf", &m[i][j]);
            if (j>i)
                a += m[i][j];
        }
    }
    if (t=='M') a /= 66.0;
    printf("%.1lf\n", a);
    return 0;
}

URI - 1183 - Acima da Diagonal Principal - Iniciante - C++ - Solução Alternativa

Plataforma: URI

Problema1183

Enunciado:
Leia um caractere maiúsculo, que indica uma operação que deve ser realizada e uma matriz M[12][12]. Em seguida, calcule e mostre a soma ou a média considerando somente aqueles elementos que estão acima da diagonal principal da matriz, conforme ilustrado abaixo (área verde).

Linguagem: C++


Solução:

#include <iostream>
#include <iomanip>

#define TAM 12

using namespace std;

int main() {
    int i, j;
    char t;
    double m[TAM][TAM], a = 0;
    
    cin >> t;
    
    for (i = 0; i < TAM; i++) {
        for (j = 0; j < TAM; j++) {
            cin >> m[i][j];
            if (j > i)
                a += m[i][j];
        }
    }
    if (t == 'M')
        a /= 66.0;
    
    cout << fixed << setprecision(1) << a << endl;

    return 0;
}

domingo, 8 de novembro de 2020

URI - 1183 - Acima da Diagonal Principal - Iniciante - C++

Plataforma: URI

Problema1183

Enunciado:
Leia um caractere maiúsculo, que indica uma operação que deve ser realizada e uma matriz M[12][12]. Em seguida, calcule e mostre a soma ou a média considerando somente aqueles elementos que estão acima da diagonal principal da matriz, conforme ilustrado abaixo (área verde).

Linguagem: C++

Solução:
Neste problema todos os valores são lidos da matriz. Sempre que o índice da coluna for maior que o índice da linha, o valor lido é somada a uma variável auxiliar. Ao final, é impresso o valor somado ou este valor dividido pelo número de elementos somados, de acordo com a operacao lida.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    char operacao;
    cin >> operacao;
    float aux;
    float soma = 0;
    float elementos = 0;
    for(int i=1;i<=12;i++){
    	for(int j=1;j<=12;j++){
    		cin >> aux;
    		if(i<j){
    			soma = soma + aux;
    			elementos++;
    		}
    	}
    }
    std::cout << std::fixed << std::setprecision(1);
    if(operacao == 'S') cout << soma << endl;
    else cout << soma/elementos << endl;
    return 0;
}

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas