Baixe o app para aproveitar ainda mais
Prévia do material em texto
Matriz Discursiva UTA B FASE I – 04/07 até 22/07 [O aluno poderá estar utilizando o Software DEVEC++] Disciplina(s): Linguagem de Programação Data de início: Prazo máximo entrega: Data de entrega: Questão 1/5 Elabore um programa que receba três notas de avaliações de um aluno, calcule a nota final (média das três notas) do aluno e informe: APROVADO ..... caso a nota final esteja no intervalo [7, 10] RECUPERAÇÃO .... caso a nota final esteja no intervalo [5, 7) REPROVADO .... caso a nota final esteja no intervalo [0, 5) Nota: 16.0 R. #include <stdio.h> int main(){ float n1,n2,n3,m; char nome[20]; printf("Nome do aluno: "); scanf("%s",&nome); printf("Insira a nota 1: "); scanf("%f",&n1); printf("Insira a nota 2: "); scanf("%f",&n2); printf("Insira a nota 3: "); scanf("%f",&n3); m=(n1*2+n2*4+n3*4)/(2+4+4); if((m>=0)&&(m<5)){ printf("\nA media final de %s foi %.1f. REPROVADO",nome,m); } if((m>=5)&&(m<7)){ printf("\nA media final de %s foi %.1f. RECUPERACAO",nome,m); } if((m>=7)&&(m<=10)){ printf("\nA media final de %s foi %.1f. APROVADO",nome,m); Resposta: #include <iostream> int main() { float n1,n2,n3,nf; std::cout << "Digite nota 1 \n"; std::cin>>n1; std::cout<< "Digite nota 2 \n"; std::cin>>n2; std::cout<< "Digite nota 3 \n"; std::cin>>n3; nf = (n1+n2+n3)/3 std:;cout <<"\n Nota Final: " << nf << "\n"; if (nf >=7 && nf <=10) { std::cout << "Aprovado"; } if (nf >=5 && nf <7) { std::cout << "Recuperacao"; } if (nf <5) { std::cout << "Reprovado"; } } Questão 2/5 Uma empresa contratou 15 funcionários temporários. De acordo com o valor das vendas mensais, os funcionários adquirem pontos que determinarão seus salários ao final de cada mês. Sabese que esses funcionários trabalharão nos meses de novembro de 2014 a janeiro de 2015. Faça um programa que: Cadastre os nomes dos funcionários e suas respectivas vendas mensais; Calcule e mostre a pontuação geral de todos os funcionários a cada mês; Determine e mostre a maior pontuação atingida nos três meses, mostrando o nome do funcionário. Desconsiderar empates; Determine e mostre o valor total vendido } } Nota: 0.0 #include <stdio.h> #include <stdlib.h> #include <conio.h> #define MAX 3 //A cada 100 reais em vendas =1pt. typedef struct { float nov, dez, jan; float total=0; char nome[20]; }func; int i,cont; float aux,pts,venda=0; func vet[MAX]; main(){ system("cls"); for(i=0;i<MAX;i++){ printf("Digite o nome do funcionario %d:\n", i+1); scanf("%s", &vet[i].nome); printf("Digite o valor das vendas em novembro: "); scanf("%f", &vet[i].nov); printf("Digite o o valor das vendas em dezembro: "); scanf("%f", &vet[i].dez); printf("Digite o valor das vendas em janeiro: "); scanf("%f", &vet[i].jan); venda=venda+(vet[i].nov+vet[i].dez+vet[i].jan); } system("cls"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em novembro: %.2f, ", vet[i].nome, vet[i].nov); pts=vet[i].nov/100; vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em dezembro: %.2f, ", vet[i].nome, vet[i].dez); pts=vet[i].dez/100; vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em janeiro: %.2f, ", vet[i].nome, vet[i].jan); pts=vet[i].jan/100; Resposta: Questão 3/5 Faça um programa que leia um código numérico inteiro e um vetor de cinco posições de números reais. Se o código for zero, termine o programa. Se o código for 1, mostre o vetor na ordem direta. Se o código for 2, mostre o vetor na ordem inversa. Nota: 10.0 vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); aux=0; cont=0; for(i=0;i<MAX;i++){ if(vet[i].total>aux){ aux=vet[i].total; cont=i; } } printf("\n\nFuncionario %s teve a maior pontuacao nos tres meses. Total de: %.2f\n", vet[cont].nome, vet[cont].total); printf("\n\nValor total das vendas nos tres meses: %.2f\n", venda); } R. #include <stdio.h> #include <stdlib.h> int main(){ int cod,a; float vet[5]={5.9,4.34,90.8,2,0.1}; printf("\nDigite uma opcao:\n\n 0 Terminar o programa\n 1 Vetor direto\n 2 Vetor invertido"); printf("\n\nInsira o codigo: "); scanf("%d",&cod); printf("\n\n\n\n"); if(cod==0){ printf("Programa encerrado..."); exit(0); }else if(cod==1){ for (a=0;a<=4;a++){ printf(" %.2f",vet[a]); Resposta: #include <iostream> int main() { float vet[5]; int c,i; std::cout << "Digite o codigo \n"; std::cin >> c; for (i=0; i<5; i++) { std::cout << "\n Digite um valor: "; std::cin >> vet[i]; } if (c == 0 ) { return 0; } if ( c == 1 ) { for (i=0;i<5;i++) { std::cout << vet[i] << "\n"; } } if ( c == 2 ) { for (i=0;i<5;i++) { std::cout << vet[4i] << "\n"; } } } Questão 4/5 Faça um programa que carregue uma matriz 10x3 com as notas de dez alunos em três provas. Mostre um relatório com o número do aluno (número da linha) e aprova em que cada aluno obteve menor nota. Ao final do relatório, mostre quantos alunos tiveram menor nota na prova 1, quantos alunos tiveram menor nota na prova 2 e quantos alunos tiveram menor nota na prova 3. Nota: 10.0 } }else if(cod==2){ for (a=4;a>=0;a){ printf(" %.2f",vet[a]); } }else printf("Opcao invalida"); return 0; } R. #include<stdafx.h> #include<stdio.h> #include<stdlib.h> #define MAXL 10//qtd alunos #define MAXC 5 //qtd notas+2 | prova | menor int main() { float mat[MAXL][MAXC], menor, cont; int i, j, val, qtd[3], temp; for (i=0;i<MAXL;i++) for (j=0;j<(MAXC2);j++) scanf("%f",&mat[i][j]); for (i=0;i<MAXL;i++) { val=1; cont=0; for (j=0;j<MAXC;j++) { switch(j) { case (MAXC2): mat[i][j]=cont+1; break; case (MAXC1): mat[i][j]=menor; break; default: if(val==1) { menor=mat[i][j]; val=0; cont=j; }else { if (mat[i][j]<menor) { menor=mat[i][j]; cont=j; } } } } } qtd[0]=0; qtd[1]=0; qtd[2]=0; for (i=0;i<MAXL;i++) { printf("\nAluno: %d Menor nota: %.2f ref a prova: %.0f ",i+1, mat[i][MAXC1], mat[i][MAXC2]); temp=mat[i][MAXC2]; qtd[temp1]++; } printf("\nQuantidade de menores notas Prova 1: %d Prova 2: %d Prova 3: %d",qtd[0], qtd[1], qtd[2]); printf("\n\n"); Resposta: Essa questão está confusa. A primeira parte da questão é simples, mas a segunda não está clara, mostrar a quantidade de alunos que obtiveram menor nota em cada prova? Mas se é menor nota teremos sempre um aluno, exceto em caso de notas empatadas. #include <iostream> int main() { float alunota[10][3],nm; int i,j,tnm; for (i=0;i<10;i++) { for (j=0;j<3;j++) { std::cout << "Nota do Aluno " << i+1 << " na prova " << j+1 << ": "; std::cin >> alunota[i][j]; } } nm = alunota[0][0]; tnm=0; for (i=0;i<10;i++){ if (alunota[i][0] <= nm) { nm = alunota[i][0]; tnm++; } } std::cout << "\n" << nm << " / " << tnm << "\n"; nm = alunota[0][1]; tnm=0 for (i=0;i<10;i++) { if (alunota[i][1] <= nm) { nm = alunota [i][1]; tnm++ } } std::cout << "\n" << nm << " / " << tnm << "\n"; nm=alunota[0][2]; tnm=0 for(i=0;i<10;i++){ if (alunota[i][2] <= nm) { nm = alunota[i][2]; tnm++; } } std::cout << "\n" << nm << "/" << tnm << "\n"; /*printf("\nMatriz:\n"); for (i=0;i<MAXL;i++) { printf("\n"); for (j=0;j<MAXC;j++) printf("%2.f",mat[i][j]); } printf("\n\n");*/ system("pause"); return 0; } } Questão 5/5 Faça um programa que receba as vendas semanais (de cada mês) de cinco vendedores de uma loja e armazene essas vendas em uma matriz. Calcule e mostre: O total de vendas do mês de cada vendedor; O total de vendas de cada semana (tosos os vendedores juntos); O total de vendas do mês. Nota: 10.0 R. #include<stdafx.h> #include<stdio.h> #include<stdlib.h> #define MAXL 5 #define MAXC 5// qtd semanas+1 | total do mes do vendedor int main() { int mat[MAXL][MAXC], somasem[MAXC1], total; int i, j; for (i=0;i<MAXL;i++) for (j=0;j<(MAXC1);j++) scanf("%d",&mat[i][j]); /*printf("\nMatriz:\n"); for (i=0;i<MAXL;i++) { printf("\n"); for (j=0;j<MAXC1;j++) printf("%4d",mat[i][j]); } printf("\n");*/ for (i=0;i<MAXL;i++) { mat[i][MAXC1]=0; for (j=0;j<(MAXC1);j++) { Resposta: #include <iostream> int main() { float vendas[5][4], totven[5], totsem[4], totgeral; int i,j; for (i=0; i<5;i++) { for (j=0;j<4;j++) { std::cout << "Vendas do Vendedor " << i+1 << " na semana " << j +1 << ": "; std:cin >> vendas[i][j]; totven[i] = totven[i] + vendas[i][j]; totsem[j] ] totsem[j] + vendas[i][j]; totgeral = totgeral + vendas[i][j]; } } std::cout << "\n Total por Vendedor \n"; for (i=0;i<5;i++){ std::cout << "Vendedor: " << i+1 << " Total: " << totven[i] << "\n"; } std::cout << "\n Total por Semana \n"; for (j=0;j<4;j++){ std::cout << "Semana: " << j+1 << " Total: " << totsem[j] << "\n"; } std::cout << "\n Total Geral: " << totgeral; } mat[i][MAXC1]=mat[i][MAXC1]+mat[i][j]; } printf("\nO vendedor %d vendeu %d no mes",i+1,mat[i][MAXC1]); } printf("\n"); total=0; for (j=0;j<(MAXC1);j++) { somasem[j]=0; for (i=0;i<MAXL;i++) { somasem[j]=somasem[j]+mat[i][j]; } printf("\nA semana %d fechou com %d vendas",j+1,somasem[j]); total=total+somasem[j]; } printf("\n\nO Total vendido no mes foi %d",total); printf("\n\n"); system("pause"); return 0; }
Compartilhar