(Matriz) Escreva um programa que armazene 9 valores para uma matriz
gerados aleatoriamente, os valores devem ser menores que 100. (1) Calcule a soma dos elementos (2) Retorne a quantidade acima do valor 50 .
A função rand() devolve um número entre os limites mencionados.
A função rand() parte da mesma semente para realizar o cálculo dos números aleatórios.
Para variar a semente, é usado um valor gerado através do relógio do computador.
A função rand() devolve um número entre os limites mencionados.
A função rand() parte da mesma semente para realizar o cálculo dos números aleatórios.
Para variar a semente, é usado um valor gerado através do relógio do computador.
Passo 1
Beleza, vamos dar uma olhada no que a questão pede. Temos que criar um programa que armazene 9 valores em uma matriz de
, onde esses valores são gerados aleatoriamente e menores que 100. Depois, precisamos calcular a soma de todos os elementos dessa matriz e contar quantos elementos são maiores que 50. Para isso, vamos precisar entender como trabalhar com matrizes, gerar números aleatórios e realizar operações básicas como soma e contagem em programação.
Passo 2
Primeiro, vamos criar uma matriz de
. Em muitas linguagens de programação, uma matriz pode ser representada como uma lista de listas. Por exemplo, em Python, podemos criar uma matriz vazia assim:
matriz = []
Aqui,
matriz
vai ser uma lista que vai conter outras listas, cada uma representando uma linha da matriz.Passo 3
Agora, precisamos preencher essa matriz com números aleatórios menores que 100. Para gerar números aleatórios, usamos a função
rand()
. Mas, para variar os números a cada execução, precisamos usar uma semente diferente, que pode ser obtida com o relógio do computador. Em Python, isso é feito assim:import random
import time
random.seed(time.time())
Isso garante que os números gerados sejam diferentes a cada vez que o programa roda.
Passo 4
Vamos agora preencher a matriz com valores aleatórios. Vamos usar dois loops: um para as linhas e outro para as colunas. Cada elemento será um número aleatório entre 0 e 99:
for i in range(3):
linha = []
for j in range(3):
numero = random.randint(0, 99)
linha.append(numero)
matriz.append(linha)
Aqui,
random.randint(0, 99)
gera um número inteiro entre 0 e 99, inclusive.Passo 5
Com a matriz preenchida, vamos calcular a soma de todos os elementos. Para isso, vamos somar cada número enquanto iteramos pelas linhas e colunas da matriz:
soma = 0
for linha in matriz:
for numero in linha:
soma += numero
No final desse loop, a variável
soma
terá o total de todos os números na matriz.Passo 6
Agora, precisamos contar quantos elementos da matriz são maiores que 50. Vamos usar uma lógica similar à da soma, mas agora incrementando um contador sempre que encontrarmos um número acima de 50:
contador = 0
for linha in matriz:
for numero in linha:
if numero > 50:
contador += 1
Assim,
contador
vai armazenar a quantidade de números que atendem a essa condição.Resposta
Então, após executar o programa, teremos a soma de todos os elementos da matriz e a quantidade de elementos que são maiores que 50. Por exemplo, se a soma for 450 e o contador for 5, esses seriam os nossos resultados finais.
Exercícios relacionados
(Recursividade) Escreva uma função recursiva que produza o reverso de um string, reverse(char s[])
(String) Escreva um programa que mostre uma string na tela pela ordem em que está escrita e pela ordem contrária. DEVE usar apenas apontador para percorrer as strings.
Apresente um esquema recursivo para dividir dois números inteiros usando contagens sucessivas. Por exemplo: calcular A/B sendo
e
. Sabemos que dividir A por B é o mesmo que descobrir quantas vezes B cabe em A . Assim, para dividir 18 por 4 podemos contar o no. de vezes que 4 cabe dentro de 18 .
(String) Escreva um programa que muda a ordem da primeira e da última palavra de uma frase.