Esta lista de exercícios resolvidos é um manual para ajudar todo aluno iniciante e não só, a adquirir e aprimorar as habilidades necessárias para se trabalhar com Python, de forma rápida e consistente. Estude e desfrute do conteúdo. 1º Exercício Faça um programa que informe a versão do Python que você está utilizando Solução import sys print ( "Versão do Python" ) print (sys.version) print ( "Informação da versão instalada" ) print (sys.version_info) Atenção : - O módulo sys fornece funções e variáveis usadas para manipular diferentes partes do ambiente de tempo de execução do Python; - Pra quem ainda não está familiarizado com a linguagem, um módulo é um arquivo contendo definições e comandos em Python para serem usados em outros programas. 2º Exercício Faça um programa em linguagem Python que converta metros para centímetros. Solução print ( ' \t ----Conversão de medida---- ' ) metros = int ( input ( 'Informe o valor em metros:
lista-exercícios resolvidos sobre matrizes bidimensionais em Linguagem C
Uma matriz bidimensional é qualquer variável composta por linhas e colunas.
Exemplo: float notas[2][3];
onde:
1º Exercício resolvido - matrizes em Linguagem C
Crie um programa que preencha todos os valores de uma matriz 2x2, e em seguida exiba todos os valores e a soma de todos os valores.
Solução
#include<stdio.h>
#include<locale.h> /* Arquivo de cabeçalho que nos permite utilizar a função setlocale que faz a função printf() imprimir na tela caracteres da língua Portuguesa como por exemplo ç , á, ã */
int main()
{
float matriz[2][2], soma=0;
int i,j;
setlocale(LC_ALL,"PORTUGUESE");
printf("\t \n Digite os valores da matriz : \n");
for(i=0;i<2;i++) /*como a gente precisa exibir uma matriz de duas linhas e duas colunas e a contagem começa em zero, temos que colocar i<2 pra termos as duas linhas, ou seja, i[0] e i[1] e o mesmo acontece com as colunas j[0] e j[1] pra totalizar 4 elementos (2*2=4)*/
for(j=0;j<2;j++)
{
scanf("%f",&matriz[i][j]);
}
for(i=0;i<2;i++)
for(j=0;j<2;j++)
{
soma=soma+matriz[i][j];
}
printf(" Os valores são: \n");
for(i=0;i<2;i++)
for(j=0;j<2;j++)
{
printf("%.1f\n",matriz[i][j]);
}
printf("A soma é = %.1f\n",soma);
return 0;
}
/* o .1f é para imprimir o valor de ponto flutuante com uma casa depois da vírgula*/
2º Exercício resolvido - matrizes
Crie um programa que receba valores do usuário para preencher uma matriz, e em seguida, exiba a soma dos valores dela e a soma dos valores da primeira diagonal,ou seja, diagonal principal.
Solução
#include<stdio.h>
int main()
{
int li,co, soma=0,soma_diagonal;
int matriz[3][3];
printf("Digite os valores: ");
for(li=0; li<3; li++)
{
for(co=0; co<3; co++)
{
scanf("%d", &matriz[li][co]);
soma=soma+matriz[li][co];
}
}
printf("\n\n A soma dos valores: %d\n", soma);
soma_diagonal=matriz[0][0]+matriz[1][1]+matriz[2][2];
printf("A soma da diagonal principal= %d\n\n",soma_diagonal);
return 0;
}
3º Exercício resolvido - matrizes
Faça um programa em Linguagem C que leia uma matriz 6 x 6, conte e escreva quantos valores maiores que 10 ela possui.
#include<stdio.h>
int main()
{
int i, j, m[3][3];
/*vamos digitar os elementos para que sejam salvos na memória*/
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&m[i][j]);
}
/*O trecho abaixo, vai exibir os valores originais que digitamos*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",m[i][j]);
printf("\n");
}
/*Abaixo, vamos multiplicar os valores da matriz por 5 */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
m[i][j]=m[i][j]*5;
}
/*Agora, vamos exibir os valores após a multiplicação */
printf("\n Valores apos a multiplicacao por 5 \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",m[i][j]);
printf("\n");
}
return 0;
}
5º Exercício resolvido - matrizes
Crie um programa que recebe uma matriz de inteiros positivos e substitui seus elementos de valor ímpar por -1 e os pares por +1.
Solução
#include<stdio.h>
int main()
{
int mat[5][5],i,j;
int valor_par=+1,valor_impar=-1;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("Digite o valor de [%d][%d] = ",i,j);
scanf("%d", &mat[i][j]);
if( mat[i][j]%2==0 )
{
mat[i][j]=valor_par;
}else
mat[i][j]=valor_impar;
}
printf("\n valores depois da substituicao \n\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("mat[%d][%d]= %d",i,j,mat[i][j]);
printf("\n");
}
return 0;
}
6º Exercício resolvido - matrizes
Some os elementos pares da matriz e escreva o resultado na tela.
Solução
#include<stdio.h>
int main()
{
int matriz[3][3],i,j,soma_par=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&matriz[i][j]);
}
/*O trecho abaixo, vai exibir os valores originais*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",matriz[i][j]);
printf("\n");
}
/*Abaixo, vamos verificar se o número é par para efetuarmos a soma */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(matriz[i][j]%2==0)
{
soma_par=soma_par+matriz[i][j];
}
}
/*Agora, vamos exibir os valores após a verificação */
printf("\n A soma dos elementos par =%d \n",soma_par);
return 0;
}
7º Exercício resolvido - matrizes em Linguagem C
Capture do teclado valores para preenchimento de uma matriz M 3x3. Após a captura imprima a matriz criada e encontre a quantidade de números pares, a quantidade de números ímpares.
Solução
#include<stdio.h>
int main()
{
int M[3][3],i,j,Qtdpar=0,Qtdimpar=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz criada*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M[i][j]);
printf("\n");
}
/*Abaixo, vamos verificar se o número é par ou impar */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(M[i][j]%2==0)
{
Qtdpar++;
}else
{
Qtdimpar++;
}
}
/*Agora, vamos exibir os valores após a contagem */
printf("\n Quantidade de elementos par = %d \n",Qtdpar);
printf("\n Quantidade de elementos impar = %d \n",Qtdimpar);
return 0;
}
8º Exercício resolvido - matrizes em Linguagem C
Crie um programa que faça a soma de duas matrizes 3x3.
Solução
#include<stdio.h>
int main()
{
int M[3][3],M2[3][3],soma[3][3];
int i,j;
printf(" \n Informe os elementos da Matriz M \n\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz M criada*/
printf("\n Valores da matriz M \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M[i][j]);
printf("\n");
}
/*Agora,vamos capturar os elementos para a matriz M2 */
printf("\n\n Informe os elementos da Matriz M2 \n\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M2[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz M2 criada*/
printf("\n Valores da matriz M2 \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M2[i][j]);
printf("\n");
}
/* Soma das Matrizes */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
soma[i][j]=M[i][j]+M2[i][j];
}
printf("\n Matriz resultante da soma\n\n ");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("\t %d ",soma[i][j]);
printf("\n");
}
return 0;
}
Uma matriz bidimensional é qualquer variável composta por linhas e colunas.
Exemplo: float notas[2][3];
onde:
- float indica que a matriz é do tipo float;
- notas é o nome da variável do tipo matriz;
- 2 é a quantidade de linhas que vão compor a matriz;
- 3 é a quantidade de colunas que vão compor a matriz.
Lembrando que em linguagem C, a contagem começa em zero (0,1,2,3,4....).
Suponhamos que a matriz foi preenchida, ela ficaria desse jeito.
Você pode visualizar que :
notas[0][0]=4 ; notas[1][[3]=7 ; notas[2][3]=0, etc.
Crie um programa que preencha todos os valores de uma matriz 2x2, e em seguida exiba todos os valores e a soma de todos os valores.
Solução
#include<stdio.h>
#include<locale.h> /* Arquivo de cabeçalho que nos permite utilizar a função setlocale que faz a função printf() imprimir na tela caracteres da língua Portuguesa como por exemplo ç , á, ã */
int main()
{
float matriz[2][2], soma=0;
int i,j;
setlocale(LC_ALL,"PORTUGUESE");
printf("\t \n Digite os valores da matriz : \n");
for(i=0;i<2;i++) /*como a gente precisa exibir uma matriz de duas linhas e duas colunas e a contagem começa em zero, temos que colocar i<2 pra termos as duas linhas, ou seja, i[0] e i[1] e o mesmo acontece com as colunas j[0] e j[1] pra totalizar 4 elementos (2*2=4)*/
for(j=0;j<2;j++)
{
scanf("%f",&matriz[i][j]);
}
for(i=0;i<2;i++)
for(j=0;j<2;j++)
{
soma=soma+matriz[i][j];
}
printf(" Os valores são: \n");
for(i=0;i<2;i++)
for(j=0;j<2;j++)
{
printf("%.1f\n",matriz[i][j]);
}
printf("A soma é = %.1f\n",soma);
return 0;
}
/* o .1f é para imprimir o valor de ponto flutuante com uma casa depois da vírgula*/
Print do programa executado |
2º Exercício resolvido - matrizes
Solução
#include<stdio.h>
int main()
{
int li,co, soma=0,soma_diagonal;
int matriz[3][3];
printf("Digite os valores: ");
for(li=0; li<3; li++)
{
for(co=0; co<3; co++)
{
scanf("%d", &matriz[li][co]);
soma=soma+matriz[li][co];
}
}
printf("\n\n A soma dos valores: %d\n", soma);
soma_diagonal=matriz[0][0]+matriz[1][1]+matriz[2][2];
printf("A soma da diagonal principal= %d\n\n",soma_diagonal);
return 0;
}
Print do programa executado |
3º Exercício resolvido - matrizes
Faça um programa em Linguagem C que leia uma matriz 6 x 6, conte e escreva quantos valores maiores que 10 ela possui.
Solução
#include<stdio.h>
#include<locale.h> /* Arquivo de cabeçalho que nos permite utilizar a função setlocale que faz a função printf() imprimir na tela caracteres da língua Portuguesa como por exemplo ç , á, ã */
int main()
{
int linha, coluna, matriz[6][6], contador=0;
setlocale(LC_ALL,"PORTUGUESE");
for( linha=0; linha<6; linha++ )
{
for( coluna=0; coluna<6; coluna++ )
{
printf("Digite o valor de [%d][%d] = ", linha+1, coluna+1);
scanf("%d", &matriz[linha][coluna]);
if( matriz[linha][coluna] > 10 )
contador++;
}
}
printf("\n\n números maiores que Dez = %d \n\n", contador);
return 0;
4º Exercício resolvido - matrizes
Faça um programa em Linguagem C que lê uma matriz de 3 x 3 elementos usando um comando for, multiplica cada elemento por 5 e imprime o resultado.
Faça um programa em Linguagem C que lê uma matriz de 3 x 3 elementos usando um comando for, multiplica cada elemento por 5 e imprime o resultado.
Solução
#include<stdio.h>
int main()
{
int i, j, m[3][3];
/*vamos digitar os elementos para que sejam salvos na memória*/
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&m[i][j]);
}
/*O trecho abaixo, vai exibir os valores originais que digitamos*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",m[i][j]);
printf("\n");
}
/*Abaixo, vamos multiplicar os valores da matriz por 5 */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
m[i][j]=m[i][j]*5;
}
/*Agora, vamos exibir os valores após a multiplicação */
printf("\n Valores apos a multiplicacao por 5 \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",m[i][j]);
printf("\n");
}
return 0;
}
Print do programa executado |
5º Exercício resolvido - matrizes
Crie um programa que recebe uma matriz de inteiros positivos e substitui seus elementos de valor ímpar por -1 e os pares por +1.
Solução
#include<stdio.h>
int main()
{
int mat[5][5],i,j;
int valor_par=+1,valor_impar=-1;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("Digite o valor de [%d][%d] = ",i,j);
scanf("%d", &mat[i][j]);
if( mat[i][j]%2==0 )
{
mat[i][j]=valor_par;
}else
mat[i][j]=valor_impar;
}
printf("\n valores depois da substituicao \n\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("mat[%d][%d]= %d",i,j,mat[i][j]);
printf("\n");
}
return 0;
}
Print do programa executado |
6º Exercício resolvido - matrizes
Some os elementos pares da matriz e escreva o resultado na tela.
Solução
#include<stdio.h>
int main()
{
int matriz[3][3],i,j,soma_par=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&matriz[i][j]);
}
/*O trecho abaixo, vai exibir os valores originais*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",matriz[i][j]);
printf("\n");
}
/*Abaixo, vamos verificar se o número é par para efetuarmos a soma */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(matriz[i][j]%2==0)
{
soma_par=soma_par+matriz[i][j];
}
}
/*Agora, vamos exibir os valores após a verificação */
printf("\n A soma dos elementos par =%d \n",soma_par);
return 0;
}
Print do programa executado |
7º Exercício resolvido - matrizes em Linguagem C
Capture do teclado valores para preenchimento de uma matriz M 3x3. Após a captura imprima a matriz criada e encontre a quantidade de números pares, a quantidade de números ímpares.
Solução
#include<stdio.h>
int main()
{
int M[3][3],i,j,Qtdpar=0,Qtdimpar=0;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz criada*/
printf("\n Valores originais da matriz\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M[i][j]);
printf("\n");
}
/*Abaixo, vamos verificar se o número é par ou impar */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
if(M[i][j]%2==0)
{
Qtdpar++;
}else
{
Qtdimpar++;
}
}
/*Agora, vamos exibir os valores após a contagem */
printf("\n Quantidade de elementos par = %d \n",Qtdpar);
printf("\n Quantidade de elementos impar = %d \n",Qtdimpar);
return 0;
}
Print do programa executado |
8º Exercício resolvido - matrizes em Linguagem C
Crie um programa que faça a soma de duas matrizes 3x3.
Solução
#include<stdio.h>
int main()
{
int M[3][3],M2[3][3],soma[3][3];
int i,j;
printf(" \n Informe os elementos da Matriz M \n\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz M criada*/
printf("\n Valores da matriz M \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M[i][j]);
printf("\n");
}
/*Agora,vamos capturar os elementos para a matriz M2 */
printf("\n\n Informe os elementos da Matriz M2 \n\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Elemento[%d][%d]= ",i,j);
scanf("%d",&M2[i][j]);
}
/*No trecho abaixo, vamos imprimir os valores da matriz M2 criada*/
printf("\n Valores da matriz M2 \n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",M2[i][j]);
printf("\n");
}
/* Soma das Matrizes */
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
soma[i][j]=M[i][j]+M2[i][j];
}
printf("\n Matriz resultante da soma\n\n ");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("\t %d ",soma[i][j]);
printf("\n");
}
return 0;
}
Print do programa executado
O que achou dos exercícios? Ajudou você? Comente com a gente
|
MUITO BOM! OBRIGADO .
ResponderExcluirVlw, aprendi muito ;)
ResponderExcluirMuito bom, mas tem um jeito mais fácil de fazer o primeiro exercício. Por exemplo: #include
ResponderExcluir#define numl 2 //Define uma constante para simplificar o programa
#define numc 2 //Define uma constante para simplificar o programa
void main() //Main
{
int matriz[numc][numl];
int somat = 0;
int cont, cont2;
for(cont = 0; cont < numc; cont++)//Pedido de Dados
{
for(cont2 = 0; cont2 < numl; cont2++)
{
printf("Insira um valor inteiro para a matriz:");
scanf("%d", &matriz[cont][cont2]);
somat += matriz[cont][cont2];
}
}
for(cont = 0; cont < numc; cont++)//Apresentação de Dados
{
for(cont2 = 0; cont2 < numl; cont2++)
{
printf("%d ", matriz[cont][cont2]);
}
}
printf("\nA soma total dos numeros inseridos: %d", somat);
getchar();
}
Escreva um programa em C que permita entrar as notas de uma turma de 10 estudantes. O programa deverá solicitar ao usuário as notas de cada estudante para 3 unidades (N_U1, N_U2 e N_U3), Os dados das notas deverão ser salvos em um array 2D (caso deseje poderá ser usada uma matriz 10 x 3 como a ilustrada na Tabela 1). Após finalizada a entrada de dados, o programa deverá:
ResponderExcluira) Imprimir na tela do computador uma tabela mostrando as notas de cada estudante;
b) Mostrar na tela a nota média alcançada por cada estudante; c) Mostrar na tela a média das notas dos estudantes (é dizer a média da turma) nas
unidades 1, 2 e 3 respectivamente.
d) Tabela 1. Exemplo ilustrativo de como podem ser salvos os dados num array 2D,
no caso uma matriz 10 x 3.
ESTUDANTES
1
2
N_U1
N U2
N_U3
10
Nota: Para alcançar a nota máxima na prova será um requisito necessário obter as
soluções das letras b) e c) usando multiplicação matricial. Alguém poderia ajudar com este código?