Buscar

4) Lista Matrizes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

-- Matrizes –
Elabore um algoritmo que cria três matrizes de inteiros com 2 linhas x 2 colunas: A, B e SOMA. A matriz A deve ser inicializada com os valores mostrados abaixo, enquanto que a matriz B deve ser lida do usuário. Por fim, deve-se calcular a matriz SOMA como sendo a soma entre as matrizes A e B e imprimir seus valores na tela. Resolva fazendo as leituras e cálculos de forma manual e depois de forma otimizada utilizando laço de repetição.
	
A=
	2
	9
	
	3
	5
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	int A[2][2]={2,9,3,5}, B[2][2], SOMA[2][2], contl, contc;
	
	// leitura da matriz B do usuário
	for (contl=0; contl<=1; contl++) {
		for (contc=0; contc<=1; contc++) {
			printf("Digite um valor para a posicao [%d][%d] da matriz B: ", contl, contc);
			scanf("%d", &B[contl][contc]);
		}
	}
	
	// calculo e impressao da matriz SOMA
	printf("\n\nMatriz SOMA:\n\n");
	for (contl=0; contl<=1; contl++) {
		for (contc=0; contc<=1; contc++) {			
			SOMA[contl][contc] = A[contl][contc] + B[contl][contc];			
			printf("\t%d", SOMA[contl][contc]);			
		}
		printf("\n");
	}	
}
Elabore um algoritmo que lê do usuário uma matriz M de 3x2 elementos reais e também um outro valor real x qualquer. Depois, deve-se realizar uma varredura na matriz em busca do valor x e, por fim, imprimir na tela quantas ocorrências do valor foram encontradas na matriz.
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	float M[3][2], x;
	int contl, contc, placar=0;
	
	// lendo valores do usuário p/ a matriz M
	for (contl=0; contl<=2; contl++) {
		for (contc=0; contc<=1; contc++) {
			printf("Digite um valor para M[%d][%d]: ", contl, contc);
			scanf("%f", &M[contl][contc]);
		}
	}
	
	// lendo um valor 'x' para ser buscado na matriz
	printf("\nAgora, digite um valor para ser buscado dentro da matriz: ");
	scanf("%f", &x);
	
	// varrendo a matriz M em busca do valor 'x'
	for (contl=0; contl<=2; contl++) {
		for (contc=0; contc<=1; contc++) {
			
			if(M[contl][contc]==x)
				placar++;
			
		}
	}	
	
	// imprimindo na tela o número de ocorrencias do valor 'x' na matriz
	printf("\nForam encontradas %d ocorrencias do valor %.1f na matriz", placar, x);
}
Elabore um algoritmo capaz de criar e imprimir na tela uma matriz identidade I de N-ésima ordem, onde N deve ser lido do usuário. Por exemplo, se N=3, o resultado esperado é:
	
	1
	0
	0
	I=
	0
	1
	0
	
	0
	0
	1
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	int N, contl, contc;
	
	// lendo do usuário a ordem 'N' da matriz
	printf("Digite a ordem desejada para a matriz identidade: ");
	scanf("%d", &N);
	
	// validação da entrada
	while (N<2) {
		printf("Erro, digite ordem >= 2: ");
		scanf("%d", &N);
	}
	
	// declaração da matriz identidade
	int I[N][N];
	
	// inicialização e impressão da matriz identidade
	for (contl=0; contl<=N-1; contl++) {
		for(contc=0; contc<=N-1; contc++) {
			
			if (contl==contc)
				I[contl][contc] = 1;
			else
				I[contl][contc] = 0;
			
			printf("\t%d", I[contl][contc]);
		}
		printf("\n");
	}	
}
Elabore um algoritmo que lê do usuário uma matriz de 6x6 elementos inteiros. Depois, o algoritmo deve varrer a matriz e verificar:
Quantos elementos positivos existem;
Quantos elementos negativos existem;
Quantos elementos nulos existem;
Quantos elementos divisíveis por 5 existem;
Quantos elementos pares e múltiplos de 3 existem.
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	int M[6][6], contl, contc, pos=0, neg=0, nul=0, dv5=0, pdv3=0;
	
	// lendo do usuário valores para a matriz
	for (contl=0; contl<=5; contl++) {
		for (contc=0; contc<=5; contc++) {
			
			printf("Digite um valor para M[%d][%d]: ", contl, contc);
			scanf("%d", &M[contl][contc]);
			
			// verifica em quais categorias o valor lido se econtra
			if(M[contl][contc]>0)
				pos++;
			else {
				if(M[contl][contc]==0)
					nul++;
				else
					neg++;
			}
			
			if(M[contl][contc]%5==0)
				dv5++;
			
			if(M[contl][contc]%2==0 && M[contl][contc]%3==0)
				pdv3++;
		}
	}
	
	// impressão na tela dos resultados
	printf("\n\n ---------------------------------");
	printf("\n Valores POSITIVOS encontrados: %d", pos);
	printf("\n Valores NEGATIVOS encontrados: %d", neg);
	printf("\n Valores NULOS encontrados: %d", nul);
	printf("\n Valores DIV. 5 encontrados: %d", dv5);
	printf("\n Valores PARES e DIV. 3 econtrados: %d", pdv3);
}
Elabore um algoritmo que lê do usuário uma matriz de 10x10 elementos reais e, em seguida, inverte os valores da 1ª linha com os valores da última linha. Por fim, o algoritmo deve imprimir na tela a matriz resultante.
Elabore o pseudocódigo/programa de um algoritmo que, utilizando laço de repetição, inicialize as matrizes A, B, C e D conforme abaixo:
		
	
	[0]
	[1]
	[2]
	[3]
	[4]
	
A=
	[0]
	1
	2
	3
	4
	5
	
	[1]
	1
	2
	3
	4
	5
	
	[2]
	1
	2
	3
	4
	5
	
	[3]
	1
	2
	3
	4
	5
	
	[4]
	1
	2
	3
	4
	5
	
	
	
	
	
	
	
		
	
	[0]
	[1]
	[2]
	[3]
	[4]
	
B=
	[0]
	1
	3
	5
	7
	9
	
	[1]
	1
	3
	5
	7
	9
	
	[2]
	1
	3
	5
	7
	9
	
	[3]
	1
	3
	5
	7
	9
	
	[4]
	1
	3
	5
	7
	9
		
	
	[0]
	[1]
	[2]
	[3]
	[4]
	
C=
	[0]
	0
	1
	2
	3
	4
	
	[1]
	1
	2
	3
	4
	5
	
	[2]
	2
	3
	4
	5
	6
	
	[3]
	3
	4
	5
	6
	7
	
	[4]
	4
	5
	6
	7
	8
		
	
	[0]
	[1]
	[2]
	[3]
	[4]
	
D=
	[0]
	0
	2
	4
	6
	8
	
	[1]
	1
	3
	5
	7
	9
	
	[2]
	2
	4
	6
	8
	10
	
	[3]
	3
	5
	7
	9
	11
	
	[4]
	4
	6
	8
	10
	12
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	int A[5][5], B[5][5], C[5][5], D[5][5], contl, contc;
	
	// inicialização das matrizes
	for (contl=0; contl<=4; contl++) {
		for (contc=0; contc<=4; contc++) {
			
			A[contl][contc] = contc+1;			
			B[contl][contc] = 2*contc+1;			
			C[contl][contc] = contl+contc;			
			D[contl][contc] = 2*contc+contl;
		}
	}
	
	// impressão da matriz A
	printf("\n Matriz A:\n\n");
	for (contl=0; contl<=4; contl++) {
		for (contc=0; contc<=4; contc++) {
			printf("\t%d", A[contl][contc]);
		}
		printf("\n");
	}
	
	// impressão da matriz B
	printf("\n Matriz B:\n\n");
	for (contl=0; contl<=4; contl++) {
		for (contc=0; contc<=4; contc++) {
			printf("\t%d", B[contl][contc]);
		}
		printf("\n");
	}
	
	// impressão da matriz C
	printf("\n Matriz C:\n\n");
	for (contl=0; contl<=4; contl++) {
		for (contc=0; contc<=4; contc++) {
			printf("\t%d", C[contl][contc]);
		}
		printf("\n");
	}
	
	// impressão da matriz D
	printf("\n Matriz D:\n\n");
	for (contl=0; contl<=4; contl++) {
		for (contc=0; contc<=4; contc++) {
			printf("\t%d", D[contl][contc]);
		}
		printf("\n");
	}
}
Elabore um algoritmo que lê do usuário uma matriz M de 3x2 elementos inteiros. Depois, o algoritmo deve calcular um vetor SOMA_LINHA, sendo que a N-ésima posição do vetor corresponde à soma entre todos os elementos da N-ésima linha da matriz. De maneira similar, calcular também um vetor SOMA_COLUNA, onde a N-ésima posição corresponde à soma entre todos os elementos da N-ésima coluna da matriz. Depois, calcular a variável TOTAL_LINHA como sendo a soma entre todas as posições do vetor SOMA_LINHA, bem como a variável TOTAL_COLUNA como sendo a soma entre todas as posições do vetor SOMA_COLUNA. Por fim, imprimir na tela os vetores SOMA_LINHA e SOMA_COLUNA, bem como as variáveis TOTAL_LINHA e TOTAL_COLUNA. Exemplo:
	
	
M =
	5
	2
	
	1
	0
	
	3
	8
	
	SOMA_LINHA=
	7
	1
	11
	TOTAL_LINHA=
	19
	
	SOMA_COLUNA=
	9
	10
	TOTAL_COLUNA=
	19
LINGUAGEM C
#include <stdio.h>
void main() {
	
	// declaração das variáveis
	int M[3][2],SOMA_LINHA[3]={0,0,0}, SOMA_COLUNA[2]={0,0}, TOTAL_LINHA=0, TOTAL_COLUNA=0, contl, contc, cont;
	
	// lê do usuário valores para a matriz M
	for (contl=0; contl<=2; contl++) {
		for (contc=0; contc<=1; contc++) {
			
			printf("Digite valor para M[%d][%d]: ", contl, contc);
			scanf("%d", &M[contl][contc]);		
		}	
	}
	
	// calcula o vetor SOMA_LINHA e a variável TOTAL_LINHA
	for (contl=0; contl<=2; contl++) {
		for (contc=0; contc<=1; contc++) {
			SOMA_LINHA[contl] = SOMA_LINHA[contl] + M[contl][contc];
		}
		TOTAL_LINHA = TOTAL_LINHA + SOMA_LINHA[contl];
	}
	
	
	// calcula o vetor SOMA_COLUNA e a variável TOTAL_COLUNA
	for (contc=0; contc<=1; contc++) {
		for (contl=0; contl<=2; contl++) {
			
			SOMA_COLUNA[contc] = SOMA_COLUNA[contc] + M[contl][contc];
		}
		TOTAL_COLUNA = TOTAL_COLUNA + SOMA_COLUNA[contc];
	}	
	// impressão da matriz M
	printf("\n\nMatriz M: \n");
	for (contl=0; contl<=2; contl++) {
		for (contc=0; contc<=1; contc++) {			
			printf("\t%d", M[contl][contc]);
		}
		printf("\n");
	}
	
	// impressao do vetor SOMA_LINHA e variável TOTAL_LINHA
	printf("\nSOMA_LINHA: ");
	for(cont=0; cont<=2; cont++) {
		printf("%d ", SOMA_LINHA[cont]);
	}
	printf("\nTOTAL_LINHA: %d", TOTAL_LINHA);
	
	// impressao do vetor SOMA_COLUNA e variável TOTA_COLUNA
	printf("\n\nSOMA_COLUNA: ");
	for(cont=0; cont<=1; cont++) {
		printf("%d ", SOMA_COLUNA[cont]);
	}
	printf("\nTOTAL_COLUNA: %d", TOTAL_COLUNA);	
}
O que será impresso na tela pelo algoritmo abaixo?
	INÍCIO
	Inteiro a[5]←{4,3,2,1,0}, b[5], aux←1, i;
	Para i de 0 até 4 passos 1
	b[a[i]] ← (2*i)+1;
	Se (b[a[i]] mod 5)=0 então
	b[a[i]] ← (-1);
	Fim-Se
	aux ← aux + b[a[i]];
	Fim-Para
	Escreva aux;
	FIM
Para auxiliar no controle das despesas da sua empresa com pagamento de funcionários, você deve criar um algoritmo (pseudocódigo/fluxograma) para funcionar como uma folha de pagamento eletrônica, tal como:
	
	Dias/mês
	Horas/dia
	R$/hora
	Total Bruto
	Desconto
	Total Líquido
	Funcionário 1
	
	
	
	
	
	
	Funcionário 2
	
	
	
	
	
	
	...
	...
	...
	...
	...
	...
	...
	Funcionário N
	
	
	
	
	
	
Mais especificamente, o algoritmo deve ser capaz de ler do usuário para dentro de uma matriz o nº de dias trabalhados no mês (1ª coluna), o nº de horas trabalhadas no dia (2ª coluna) e o valor (R$) da hora trabalhada (3ª coluna) referente a N funcionários, onde N também deve ser informado pelo usuário. Então, o algoritmo deve preencher a 4ª coluna com o salário bruto de cada funcionário, e a 5ª coluna com o valor do desconto mensal (INSS, IR, etc.). Na sua empresa, são descontados mensalmente de cada funcionário 30% sobre seu salário bruto. Depois, calcular na última coluna o salário líquido de cada funcionário. Por fim, o algoritmo deve imprimir na tela:
O total gasto pela empresa com o pagamento dos funcionários, tendo em vista os valores brutos;
Quantos funcionários recebem menos que R$2 mil líquido?
Quantos funcionários recebem entre R$2 mil e R$5 mil líquido?
Quantos funcionários recebem mais que R$5 mil líquido?
Qual é o maior e qual o menor número de dias trabalhados por um funcionário na empresa?
Qual é o maior e qual o menor número de horas trabalhadas no dia por um funcionário na sua empresa?
Qual é o maior e qual o menor valor (R$) de hora trabalhada recebido por um funcionário na sua empresa?
Qual é o maior salário pago na empresa para um funcionário, tendo em vista os valores brutos.

Outros materiais