Baixe o app para aproveitar ainda mais
Prévia do material em texto
ALGORITMOS E LINGUAGEM DE PROGRAMAÇÃO PROFESSOR: Kennedy Ferreira Araújo ALUNA: Jéssica da Silva Lista 02: Vetores e Matrizes 1. Escreva um programa em C que leia um vetor de 10 posições e imprima os elementos que são maiores que 20, caso não houver nenhum elemento mostrar uma mensagem de aviso ao usuário. #include <stdio.h> int main(void){ int vetor [10], i,a; for(i=0;i<10;i++){ printf("Informe um valor:\n",(i+1)); scanf("%d", &vetor[i]); } printf("Os valores maiores que 20 são:"); for(i=0;i<10;i++){ if(vetor[i]>20){ printf("%d \n", vetor[i]); a=1; } } if (a!=1){ printf("\n Não há números maiores que 20"); } return 0; } 2. Escreva um programa em C que leia um vetor de 20 posições e escreva a posição de cada elemento igual a 10 dentro dele. #include <stdio.h> int main(void){ int vetor [20], i; for(i=0;i<21;i++){ printf("Informe um valor:\n",(i+1)); scanf("%d", &vetor[i]); } printf("As posições dos elementos iguais a 10 são:\n"); for(i=0;i<20;i++){ if(vetor[i]==10){ printf("%d \n", i); } } return 0; } 3. Escreva um programa em C que leia um vetor de tamanho N (onde N é uma constante de tamanho 12), escreva o valor e a soma de todos os elementos de índice par. #include <stdio.h> #define n 12 int main() { int vetor [n], i, soma,a; soma=0; for(i=0;i<n;i++){ printf("Informe um valor:\n",(i+1)); scanf("%d", &vetor[i]); } printf("Os números pares são:"); for(i=0;i<n;i++){ if(i%2==0){ printf("\n %d", vetor[i]); soma=soma+vetor[i]; a=1; } } if(a==1){ printf("\nA soma dos números pares é:%i", soma); } return 0; } 4. Ler no teclado 12 números inteiros e armazena-los em um vetor N. Em seguida, copiar os elementos pares divisíveis por 3 para o vetor X e os ímpares divisíveis por 5 para o vetor Y. #include <stdio.h> int main() { int n [12], i; int x[12]={0,0,0,0,0,0,0,0,0,0,0,0}; int y[12]={0,0,0,0,0,0,0,0,0,0,0,0}; for(i=0;i<12;i++){ printf("Informe um valor:\n",(i+1)); scanf("%d", &n[i]); if(n[i]%2==0 && n[i]%3==0){ x[i]=n[i]; } if(n[i]%2!=0 && n[i]%5==0){ y[i]=n[i]; } } printf("\nValores de pares divisíveis por 3\n"); for(i=0;i<6;i++){ printf("%d\n",x[i]); } printf("\nValores de ímpares divisíveis por 5\n"); for(i=0;i<6;i++){ printf("%d\n",y[i]); } return 0; } 5. Faça um programa em C que leia a idade e a altura de 5 pessoas, armazene cada informação no seu respectivo vetor. Imprima a idade e a altura na ordem inversa à ordem lida. #include <stdio.h> int main (void) { int i,cont; float idade [5],altura [5]; cont=5; for(i=0;i<5;i++){ printf("Informe a idade\n"); scanf("%f", &idade[i]); printf ("Informe a altura:\n"); scanf("%f", &altura[i]); } for(cont=4;cont>-1;cont--){ printf("A idade é %f e a altura é %f\n",idade[cont], altura[cont]); } return 0; } 6. Faça um programa em C que leia dois vetores com 10 elementos cada. Gere um terceiro vetor de 20 elementos, cujos valores deverão ser compostos pelos elementos intercalados dos outros dois vetores. #include <stdio.h> int main (void) { int i,j,x[10],y[10],z[20]; j=0; for(i=0;i<10;i++){ printf("Informe o valor de X\n"); scanf("%i", &x[i]); printf ("Informe o valor de Y\n"); scanf("%i", &y[i]); } for(i=0;i<10;i++){ z[j]=x[i]; j++; z[j]=y[i]; j++; } printf ("Dados do vetor de Z"); for(j=0;j<20;j++){ printf ("%i\n",z[j]); } return 0; } 7. Elabore um programa em C para ler 3 notas de alunos de uma turma e os respectivos nomes, identifique qual a nota máxima e a mínima e mostre quais os respectivos nomes dos alunos que as obtiveram. #include <stdio.h> int main (void) { int tam; printf("Qual o tamanho da turma?\n"); scanf("%i", &tam); char aluno[tam]; float maiorNota=0,menorNota=11,nota; int i,j, indiceMaior, IndiceMenor; for(i=0;i<tam;i++){ printf("Informe um aluno\n"); scanf("%c", &aluno[i]); for(j=0;j<tam;j++){ printf("Informe uma notas\n"); scanf("%f", ¬a); if(nota>maiorNota){ maiorNota=nota; indiceMaior=i; } if(nota>menorNota){ menorNota=nota; IndiceMenor=i; } } printf("A maior nota é %f do aluno %c \n",maiorNota,aluno[indiceMaior]); printf("A menor nota é %f do aluno %c \n",menorNota,aluno[IndiceMenor]); return 0; } 8. Escreva um programa em C para ler e armazenar valores inteiros em uma matriz (5,5). A seguir, calcular a média dos valores pares contidos na matriz e escrever a média calculada e o conteúdo da matriz. #include <stdio.h> int main (void) { int x[5][5],i,j,cont,soma; float media; soma=0; cont=0; for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("Informe um número inteiro\n"); scanf("%i", &x[i][j]); if(x[i][i]%2==0){ soma=soma+x[i][j]; cont=cont+1; } } } printf("Os elementos da matriz são\n"); for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("\n %i",x[i][j]); } } media=soma/cont; printf("A média dos elementos pares é %f\n",media); return 0; } 9. Escrever um algoritmo para ler uma matriz (7,4), contendo valores inteiros (supor que os valores são distintos). Após, encontrar o menor valor contido na matriz e sua posição. #include <stdio.h> int main (void) { int x[7][4],i,j,posicao,posicao1, menor; menor=0; posicao=0; posicao1=0; for(i=0;i<7;i++){ for(j=0;j<4;j++){ printf("Informe um número inteiro\n"); scanf("%i", &x[i][j]); } } menor=x[1][1]; for(i=0;i<7;i++){ for(j=0;j<4;j++){ if(x[i][j] < menor){ menor = x[i][j]; posicao=i; posicao1=j; } } } printf("O menor elemento da matriz é %i\n",menor); printf("Sua linha é %i e sua coluna é %i\n",posicao,posicao1); return 0; } 10. Escreva um algoritmo que lê uma matriz (5,5) e calcula as somas: • Da linha 4 de M. • Da coluna 2 de M. • Da diagonal principal. • Da diagonal secundária. • De todos os elementos da matriz • Escreva estas somas e a matriz. #include <stdio.h> int main (void) { int i,j,x[5][5], soma4, soma2, diagonalPrincipal, somaTotal, diagonalSecundaria; soma4=0; soma2=0; diagonalPrincipal=0; diagonalSecundaria=0; somaTotal=0; diagonalPrincipal=0; for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("Informe um número inteiro\n"); scanf("%i", &x[i][j]); somaTotal=somaTotal+x[i][j]; } } if (i=3){ for(j=0;j<5;j++){ soma4=soma4+x[3][j]; } } if (j=1){ for(i=0;i<5;i++){ soma2=soma2+x[i][1]; } } if (i=j){ diagonalPrincipal=diagonalPrincipal+x[i][j]; } for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("os itens da matriz são: %i\n",x[i][j]); } } diagonalSecundaria=x[1][5]+x[2,4]+x[3][3]+x[4][2]+x[5][1]; printf ("o valor da soma da linha 4 é: %i \n",soma4); printf ("o valor da soma da coluna 2 é: %i \n",soma2); printf("o valor da soma da diagonal principal é: %i \n",diagonalPrincipal); printf ("o valor da soma da diagonal principal é: %i \n",diagonalSecundaria); printf ("o valor da soma de todos os itens da matriz é é: %i \n",somaTotal); return 0; } 11. Ler uma matriz 5x5 e gerar outra em que cada elemento é o cubo do elemento respectivo na matriz original. #include <stdio.h> int main (void) { int i,j,x[5][5],y[5][5]; for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("Informe os valores\n"); scanf("%i", &x[i][j]); } } for(i=0;i<5;i++){ for(j=0;j<5;j++){ y[i][j]=x[i][j]*3; } } printf ("Dados do vetor\n"); for(i=0;i<5;i++){ for(j=0;j<5;j++){ printf("%i\n",y[i][j]); } } return 0; } 12. Faça um algoritmo para ler uma matriz de 3x4 de números reais e depois exibir o elemento do canto superior e do canto inferior esquerdo. #include <stdio.h> int main (void) { int i,j,x[3][4]; for(i=0;i<3;i++){ for(j=0;j<4;j++){ printf("Informe um número inteiro\n"); scanf("%i", &x[i][j]); } } printf ("o valor do canto superior esquerdo é: %i \n",x[0][0]); printf ("o valor do canto inferior esquerdo é: %i",x[2][0]); return 0; } 13. Crie uma matriz 7x8 onde cada elemento é a soma dos índices de sua posição dentro da matriz. #include <stdio.h> int main (void) { int x[7][8],i,j; for(i=0;i<7;i++){ for(j=0;j<8;j++){ x[i][j]=i+j; } } for(i=0;i<7;i++){ for(j=0;j<8;j++){ printf("Os elemento da matriz são %i\n",x[i][j]); } } return 0; } 14. Leia uma matriz 10x10 que se refere respostas de 10 questões mútipla escola, referentes a 10 alunos. Leia também um vetor de 10 posições contendo a,b,c ou d. Seu programa deverá comparar as respostas de cada candidato com o gabarito e emitir um vetor Resultado, contendo a pontuação correspondente. #include <stdio.h> int main (void) { char x[10][10], gabarito[10]; int i,j,acertos; acertos=0; for(i=0;i<10;i++){ for(j=0;j<10;j++){ printf("Informe uma resposta\n"); scanf("%d", &x[i][j]); printf("Informe uma gabarito\n"); scanf("%d", &gabarito[i]); if(x[i][i]==gabarito[i]){ acertos=acertos+1; } } } printf("O número de acertos é %i \n",acertos); return 0; }
Compartilhar