Buscar

Lista 1 - Vetores e 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 11 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 11 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 9, do total de 11 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

Prévia do material em texto

Lista de exercícios – Vetores e matrizes
Professor: Fernando Camilo Paes
Aluno: Tiago Vinícius Soares de Paula
Matrícula: 441913
1. Ler uma matriz quadrada de tamanho 5x5 contendo valores reais e imprimir o produto dos elementos situados nas linhas pares da diagonal secundária. 
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int i,j;
 float matriz[5][5],produto;
 printf("\nDigite valores para preencher a matriz :\n\n");
 for(i = 0; i < 5; i++)
 for(j = 0; j < 5; j++)
 {
 printf("matriz[%i][%i] = ",i,j);
 scanf("%f",&matriz[i][j]);
 }
 produto = 1;
 for(i = 0; i < 5; i++)
 for(j = 0; j < 5; j++)
 {
 if ( i + j == 4 && i %2 == 0)
 produto = produto * (matriz[i][j]);
 }
 printf("\nProduto dos elementos situados nas linhas pares da diagonal secundaria : \n%.2f\n",produto);
 return 0;
}
2. Ler uma matriz quadrada de tamanho 3x3 e imprimir o produto dos elementos pares situados na terceira coluna da matriz.
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int matriz[3][3],i,j,produto;
 printf("\nDigite valores inteiros para a matriz :\n\n");
 for(i = 0; i < 3; i++)
 for(j = 0; j < 3; j++)
 {
 printf("mat[%i][%i] = ",i,j);
 scanf("%i",&matriz[i][j]);
 }
 produto = 1;
 for(i = 0; i < 3; i++)
 for (j = 0; j < 3; j++)
 {
 if ( matriz[i][j]%2 == 0 && j == 2 )
 produto = produto * (matriz[i][j]);
 }
 printf("\nO produto dos elementos pares da terceira coluna : %i\n\n",produto);
 return 0;
}
3. Ler uma matriz quadrada de tamanho 4x4 e copiar para um vetor de tamanho adequado, os elementos ímpares da matriz. Imprimir o vetor e a matriz.
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int matriz[4][4],i,j,tamanho;
 printf("\nDigite valores inteiros para preencher a matriz :\n\n");
 for (i = 0; i < 4; i++)
 for (j = 0; j < 4; j++)
 {
 printf("matriz[%i][%i] = ",i,j);
 scanf("%i",&matriz[i][j]);
 }
 tamanho = 0;
 for (i = 0; i < 4; i++)
 for (j = 0; j < 4; j++)
 {
 if (matriz[i][j] %2 == 1)
 tamanho = tamanho + 1;
 }
 int vetor[tamanho],t;
 t = 0;
 for (i = 0; i < 4; i++)
 for (j = 0; j < 4; j++)
 {
 if (matriz[i][j] %2 == 1)
 {
 vetor[t] = matriz[i][j];
 t++;
 }
 }
 printf("\n Matriz digitada : \n\n");
 for (i = 0; i < 4;i++)
 {
 for (j = 0; j < 4; j++)
 printf("%i\t",matriz[i][j]);
 printf("\n");
 }
 printf("\n\n Vetor de elementos impares : \n\n");
 for ( t = 0; t < tamanho; t++)
 {
 printf("%i\t",vetor[t]);
 }
 printf("\n");
 return 0;
}
4. Ler um vetor de tamanho 5 contendo valores inteiros e copia-lo para a diagonal principal de uma matriz quadrada de tamanho 5x5, previamente, preenchida com zeros. Imprimir a matriz e o vetor.
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int vetor[5],t,i;
 printf("Digite valores inteiros para preencher o vetor \n");
 for(i = 0; i < 5; i++)
 {
 printf("vetor[%i] = ",i);
 scanf("%i",&vetor[i]);
 }
 int matriz[5][5],j;
 for (i = 0; i < 5; i++)
 for(j = 0; j < 5; j++)
 {
 matriz[i][j] = 0;
 }
 t = 0;
 for(i = 0;i < 5;i++)
 {
 matriz[i][i] = vetor[t];
 t++;
 }
 printf("\n\n Vetor digitado\n\n");
 for(i = 0; i < 5; i++)
 {
 printf("%i\t",vetor[i]);
 }
 printf("\n");
 printf("\n Matriz resultante\n\n");
 for(i = 0; i < 5; i++)
 {
 for(j = 0; j < 5; j++)
 printf("%i\t",matriz[i][j]);
 printf("\n");
 }
 return 0;
}
5. Preencher a matriz abaixo usando as relações entre linhas e colunas, sem usar atribuição direta, usando as relações entre linhas e colunas de uma matriz em relação às diagonais. Imprimir a matriz criada
0	1	2	3	1
1	2	3	1	4
2	3	1	4	5
3	1	4	5	6
1	4	5	6	0
#include <stdio.h>
#include <stdlib.h>
int main()
{
	int i,j,matriz[5][5];
	for (i = 0; i < 5; i++)
		for(j = 0; j < 5; j++)
 {
 {
		 if (i + j == 4)
 matriz[i][j] = 1;
 else if(i + j == 3)
 matriz[i][j] = 3;
 else if(i + j == 2)
 matriz[i][j] = 2;
 else if(i + j == 1)
 matriz[i][j] = 1;
 else if(i + j == 0)
 matriz[i][j] = 0;
 else if( i + j == 5)
 matriz[i][j] = 4;
 else if(i + j == 6)
 matriz[i][j] = 5;
 else if(i + j == 7)
 matriz[i][j] = 6;
 else if(i + j == 8)
 matriz[i][j] = 0;
 }
 }
	printf("A matriz criada eh : \n\n");
	for (i = 0; i < 5; i++)
 {
		for(j = 0; j < 5; j++)
		{
			printf("%i\t",matriz[i][j]);
		}
		printf("\n");
	}
	return 0;
}
	
6. Ler uma matriz quadrada de tamanho 5x5 e imprimir sua transposta.
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int matriz[5][5],i,j;
 printf("\nDigite valores inteiros para preencher a matriz :\n\n");
 for(i = 0; i < 5; i++)
 for(j = 0; j < 5; j++)
 {
 printf("Matriz[%i][%i] = ",i,j);
 scanf("%i",&matriz[i][j]);
 }
 printf("\n Matriz digitada : \n\n");
 for(i = 0; i < 5; i++)
 {
 for(j = 0; j < 5; j++)
 printf("%i\t",matriz[i][j]);
 printf("\n");
 }
 printf("\n Matriz transposta da matriz digitada : \n\n");
 for(i = 0; i < 5; i++)
 {
 for(j = 0; j < 5; j++)
 printf("%i\t",matriz[j][i]);
 printf("\n");
 }
 return 0;
}
7. Ler um vetor contendo 20 valores inteiros e imprimir a soma dos elementos ímpares e o produto dos elementos múltiplos de 5 deste vetor. 
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int vetor[20],t,soma,produto;
 soma = 0;
 produto = 1;
 printf("Digite valores inteiros para preencher o vetor \n");
 for(t = 0; t < 20; t++)
 {
 printf("vetor[%i] = ",t);
 scanf("%i",&vetor[t]);
 if(vetor[t]%2 == 1)
 soma = soma + vetor[t];
 if(vetor[t]%5 == 0)
 produto = produto * vetor[t];
 }
 printf(" Soma dos numeros impares = %i\n\n",soma);
 printf(" Produto dos multiplos de 5 = %i\n",produto);
 return 0;
}
8. Ler um vetor de tamanho 16 contendo valores reais e imprimir o produto dos elementos situados nas posições pares do vetor. 
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int i;
 float vetor[16],produto;
 printf("Digite valores reais para o vetor : \n");
 for(i = 0; i < 16; i ++)
 {
 printf("vetor[%i] = ",i);
 scanf("%f",&vetor[i]);
 }
 produto = 1;
 for(i = 0; i < 16; i++)
 {
 if( i %2 == 0)
 produto = produto * vetor[i];
 }
 // %.2f = apresenta apenas duas casas após a vírgula na resposta.
 printf("Produto dos elementos de posicao par : %.2f\n",produto);
 return 0;
}
9. Ler um vetor de tamanho 25 contendo valores inteiros e imprimir o produto dos elementos que sejam números perfeitos (são números em que a soma de seus divisores é igual a ele próprio ex: 28 =1+2+4+7+14).
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int vetor[25],i,j,soma,produto;
 soma = 0;
 produto = 1;
 printf("Digite valores inteiros para o vetor : \n");
 for(i = 0; i < 25; i++)
 {
 printf("vetor[%i] = ",i+1);
 scanf("%i",&vetor[i]);
 }
 // Para cada numero em vetor
 for(i = 0; i < 25; i++)
 {
 // Verifica os divisores
 for(j = vetor[i]-1; j >= 1; j--)
 {
 if(vetor[i] % j == 0)
 soma = soma + j;
 }
 // Se for numero perfeito
 if(vetor[i] == soma)
 produto = produto * soma;
 soma = 0;
 }
 printf("Produto dos numeros perfeitos : %.i\n",produto);
 return 0;
}
10. Armazenar em um vetor de tamanho 16 os 16 primeiros elementos da série:
1	1	2	3	4	9	8	27	...
 Imprimir o vetor criado.
#include <stdio.h>
#include <stdlib.h>
int main()
{
 int t,vetor[16];
 for(t = 0; t < 16; t ++)
 {
 if(t == 0 || t == 1)
 vetor[t] = 1;
 else if(t== 2 )
 vetor[t] = 2;
 else if(t == 3)
 vetor[t] = 3;
 else if (t %2 == 0 && t > 2)
 // Garante a sequência par a partir do número 2.
 vetor[t] = vetor[t - 2] * 2;
 else if(t %2 == 1 && t > 3)
 // Garante a sequência ímpar a partir do número 3.
 vetor[t] = vetor[t - 2] * 3 ;
 }
 printf(" Vetor criado : \n\n");
 for(t = 0; t < 16; t++)
 printf("%i\t",vetor[t]);
 printf("\n");
 return 0;
}

Outros materiais