Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 CENTRO UNIVERSITÁRIO INTERNACIONAL UNINTER ESCOLA SUPERIOR POLITÉCNICA TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS DISCIPLINA DE LÓGICA DE PROGRAMAÇÃO E ALGORITMOS ATIVIDADE PRÁTICA VALQUIRES FRANCISCO DE LIMA JUNIOR – RU: 364678 PROFESSOR. VINICIUS BORIN LEONARDO GOMES POMPANO BEACH– FLORIDA 2019 Exercício 1 Obs: trabalho feito no programa visual studio //Exercício 1: //Uma certa empresa fez uma pesquisa de mercado para saber se as pessoas gostaram // ou não do seu último produto lançado.Para isto, coletou o sexo do entrevistado //e a sua resposta(sim ou não).Sabendo que foram entrevistadas 150 pessoas, //fazer um algoritmo que calcule e mostre ao final: //• O número de pessoas que responderam sim; //• O número de pessoas que responderam não; //• A percentagem de pessoas do sexo feminino que responderam sim; //• A percentagem de pessoas do sexo masculino que responderam não; //Para a resposta SIM / NÃO.Utilize uma variável do tipo CHAR, //que armazena S ou N, ou use uma variável do tipo INT que armazena 1 (para SIM) e 2 (para NÃO). #include<stdio.h> // carregando biblioteca #include<stdlib.h> // carregando biblioteca #define total 150 // definindo a quantidade de perguntas int main() { // definindo as variaveis int sexo, resposta, calculo, porcento; int contS = 0, contN = 0, contSfem = 0, contSh = 0; //float porcentagem; for (int i = 1; i <= total; i++) { printf("Digite 1 para Sim ou 2 para Nao: \nResposta : "); // digitos 1 e 2 pra respostas scanf_s("%d", &resposta); // garda as respostas printf("Digite seu sexo( 1 - H ou 2 M ) \nResposta : "); // digitos dos sexo scanf_s("%d", &sexo); // garda o sexo da pessoa if (resposta == 1) {//sim contS++; ///contar os sim if (sexo == 2) { //sim e feminino contSfem++; } } else { //nao contN++; /// contar os nao } if (sexo == 1) { contSh++; } } // calculos de sim e nao de homens e mulheres printf("\n"); //pula linha printf("\n"); //pula linha printf("total de Sim: %d\n", contS); //total de Sim printf("\n"); //pula linha printf("total de nao: %d\n", contN); //total de nao printf("\n"); //pula linha printf("total de mulher sim: %d\n", contSfem); printf("\n"); //pula linha printf("total de homens nao: %d\n", contSh); //total de homens nao printf("\n"); //pula linha /// calculando a porcentagem de sim e nao printf("total percentual de homens que votaram nao: %d Porcento \n", contN * 100 / total); //percentual de homens que votaram nao printf("\n"); //pula linha printf("total percentual de mulheres que votaram sim: %d Porcento \n", contSfem * 100 / total); //percentual de mulheres que votaram sim printf("\n"); //pula linha system("pause"); // pausa do sistema return 0; // retorna 0 } Exercício 2 Obs: trabalho feito no programa visual studio //Para cada um dos consumidores de energia elétrica de uma cidade é informado o número da conta e o //total de KW consumido no mês.Sabendo - se que o custo do KW é de R$ 1, 75, fazer um algoritmo para :/ //• Armazenar e listar o número da conta, o total de KW consumidos e o valor a pagar de cada consumir //cadastrado; //1 - Listar o número da conta, o total de KW consumidos e o valor a pagar do consu- midor //que mais gastou e o que menos gastou; //2 - Mostrar a média de consumo da cidade; //3 - Mostrar o número de consumidores que ultrapassaram o consumo de 170 KW; //Armazene as informações em estruturas de vetores e / ou matrizes.Na tela, //deve existir um MENU que pergunta ao usuário se ele deseja cadastrar um novo consu- midor //ou listar alguma informação(maior, menor, média, etc.). #include <stdio.h> //biblioteca #include <stdlib.h>//biblioteca #include <locale.h>//biblioteca #define numeros_linhas 5 // declarando tamanho máximo do vetor #define valor_kwh 1.75 // declara o valkor do kw float consumidor[numeros_linhas][2]; // variaveis int total_registrado = 0; //variaveis // procedimento para exibir menu void exibirMenu() { printf("\n\n*******Menu principal:*******"); printf("\t\n1 - Cadastrar consumidor e kwh"); printf("\n2 - Listar maior consumo"); printf("\n3 - Listar menor consumo"); printf("\n4 - Listar consumo acima 170 KW"); printf("\n5 - Consumo médio da cidade"); printf("\n6 - Sair do sistema"); printf("\n>>: "); printf("\n\n*******Tenha Um Bom Dia*******"); } // procedimento para cadastrar conta e kwh consumido void cadastroConKwh() { system("cls"); printf("\nNúmero da conta: "); scanf_s("%f", &consumidor[total_registrado][0]); printf("\nKWH consumido: "); scanf_s("%f", &consumidor[total_registrado][1]); total_registrado++; printf("\nCadastro realizado com sucesso!\n"); system("pause"); } // procedimento para mostrar o maior consumo void mostrar_maior_consumo() { system("cls"); // limpa a tela // o menor no começo é sempre 0, então não existe engenharia de usar energia do poste e não //pagar nada float kwh = 0, vl_total = 0, numero_conta = 0; int i; // compara se o kwk é maior que registrado for (i = 0; i < total_registrado; i++) { if (consumidor[i][1] > kwh) { numero_conta = consumidor[i][0]; kwh = consumidor[i][1]; } } vl_total = (float)(kwh * valor_kwh); printf("\nMaior consumo registrado"); printf("\nNúmero da conta: %0.2f", numero_conta); printf("\nKwH consumido: %0.2f", kwh); printf("\nValor total a pagar: %0.2f", vl_total); system("pause"); } // procedimento para mostrar menor consumo void mostrar_menor_consumo() { system("cls");// limpa a tela // preciso primneiro colocar kwk com valor estratoférico que nem Bill Gates con- seguiria pagar float kwh = 99999999, vl_total = 0, numero_conta = 0; int i; for (i = 0; i < total_registrado; i++) { // compara se o kwk é menor que registrado if (consumidor[i][1] < kwh) { numero_conta = consumidor[i][0]; kwh = consumidor[i][1]; } } vl_total = (float)(kwh * valor_kwh); printf("\nMenor consumo registrado"); printf("\nNúmero da conta: %0.2f", numero_conta); printf("\nKwH consumido: %0.2f", kwh); printf("\nValor total a pagar: %0.2f", vl_total); system("pause"); } // procedimento para listar consumidores acima n kwh void listarConsumoSuperior(float n) { system("cls");// limpa a tela int contador = 0, i = 0; printf("\nExibindo consumo acima de %.2fKW", n); for (i = 0; i < total_registrado; i++) { if (consumidor[i][1] > n) { printf("\nNúmero da conta: %.2f - KWh: %.2f", consumidor[i][0], consumidor[i][1]); contador++; } } printf("\nTotal encontrado: %d\n", contador); // imprimindo total de consumidor system("pause"); } // exibe a media de consumo da cidade void consumo_medio_cidade() { system("cls");// limpa a tela float media = 0; // declarando media como 0 int i; for (i = 0; i < total_registrado; i++) { media = media + consumidor[i][1];//somando consumo } media = media / total_registrado; // fazendo media aritmetica com total somado dividindo com //numero de consumidor cadastrado printf("\nO consumo médio da cidade é: %.2fKW", media); // imprimindo a media de consumo da cidade system("pause"); } int main() { setlocale(LC_ALL, "Portuguese"); int opcao; // escolha do menu do { exibirMenu(); scanf_s("%d", &opcao); // le a opcao do usuario switch (opcao) { case 1: { cadastroConKwh(); // para cadastro de consumidor break; } case 2: { mostrar_maior_consumo(); // exibi o maior consumo break; } case 3: {mostrar_menor_consumo(); // exibi menor consumo break; } case 4: { listarConsumoSuperior(170); // listar consumo acima citado break; } case 5: { consumo_medio_cidade(); // imprimir a media de consumo em kw da cidade break; } case 6: { goto sair; // sair do sistema } default: { printf("Opção inválida"); // imprimindo opcao invalida } } } while (opcao != 6); sair: return 0; // retorno 0 } menu Maior consumo Menor consumo Consumo acima de 170 kw Consumo médio da cidade Exercício 3: Obs: trabalho feito no programa visual studio //Dizemos que uma matriz quadrada inteira é um quadrado mágico se a soma dos //elementos de cada linha, a soma dos elementos de cada coluna e a soma dos elementos //das diagonais principal e secundária são todas iguais.Dada uma matriz quadrada //dimensão MxM, verifique se ela é um quadrado mágico através de um algoritmo. //Exemplo de matriz quadrado mágico : /*[ 8 0 7 4 5 6 3 10 2 ] */ #include<stdio.h> // bibliotecas #include<stdlib.h> #include<conio.h> int main(void) { int matriz[3][3], i, j; // declaracao dos vetores printf("\n digite o valor para cada elemento da matriz\n"); //digitos do usuario pra preencer o vetor. for (i = 0; i < 3; i++) for (j = 0; j < 3; j++) { printf("\nElemnto[%d] [%d]=", i, j); scanf_s("%d", &matriz[i][j]); } printf("\n\n******* Saida de Dados ******* \n\n"); for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) printf(" %d ", matriz[i][j]); printf("\n"); } printf("\n"); //declaracao de variaveis int somaDP = 0, somaDS = 0; //soma diagonal principal for (i = 0; i < 3; i++) { somaDP += matriz[i][i]; } //soma diagonal secundária for (i = 0; i < 3; i++) { somaDS += matriz[i][3 - i - 1]; } //soma linhas printf("\nSoma das linhas: "); int vetL[3]; for (i = 0; i < 3; i++) { vetL[i] = 0; for (j = 0; j < 3; j++) { vetL[i] += matriz[i][j]; } } for (i = 0; i < 3; i++) { printf("%i ", vetL[i]); } //soma colunas printf("\nSoma das colunas: "); int vetC[3]; for (j = 0; j < 3; j++) { vetC[j] = 0; for (i = 0; i < 3; i++) { vetC[j] += matriz[i][j]; } } for (i = 0; i < 3; i++) { printf("%i ", vetC[i]); } printf("\nSoma diagonal principal %i e secundaria %i\n", somaDP, somaDS); int testaL = 1, testaC = 1; for (i = 1; i < 3; i++) { if (vetL[i] != vetL[i - 1]) { testaL = 0; break; } else if (vetC[i] != vetC[i - 1]) { testaC = 0; break; } } // verificacao do cubo magito sim e nao if (testaL && testaC && somaDP == somaDS && somaDP == vetL[0]) { printf("Quadrado magico"); } else { printf("Quadrado nao magico"); } printf("\n"); } Exercício 4 A //Escrever uma função que receba como parâmetro duas strings, //bem como um valor inteiro que representa uma posição. //A função deve, portanto, inserir a segunda string no na posição indicada da primeira //Escreva um programa que receba estas duas strings do usuário, //o valor da posição desejada, e chame a função anteriormente implementada //e exiba o resultado ao usuário na tela. //Para imprimir na tela e tirar o print screen, //mostre o resultado utilizando o seu primeiro nome como string 1 e o seu último nome como string 2, //e a posição de teste deverá ser o último digito do seu RU. #include <stdio.h> //declaracao da bibliotecas #include <stdlib.h> #include <string.h> int main() { //declaracoes de variaveis char nome[10]; char sobrenome[10]; int ru = 0; int verificar = 0; // local aonde sera digitados as variaveis e seram salvas no vetor printf("Insira o nome do usuário: \n"); gets_s(nome); printf("Insira o segundo nome: \n"); gets_s(sobrenome); printf("Digite o seu ultimo numero da RU"); scanf_s("%d", &ru); // faz a divisao do nome com o numro do ru for (verificar; verificar < ru; verificar++) { printf("%c", nome[verificar]); } printf("%s", sobrenome); //pega o restante do nome e coloca depois do sobrenome for (verificar = ru; verificar <= strlen(nome); verificar++) { printf("%c", nome[verificar]); } return 0; // retorna 0 } Exercício 4 B Obs: trabalho feito no programa codeblocks //Escrever uma função que receba como parâmetro duas strings, //bem como um valor inteiro que representa uma posição. //A função deve, portanto, inserir a segunda string no na posição indicada da primeira //Escreva um programa que receba estas duas strings do usuário, //o valor da posição desejada, e chame a função anteriormente implementada //e exiba o resultado ao usuário na tela. //Para imprimir na tela e tirar o print screen, //mostre o resultado utilizando o seu primeiro nome como string 1 e o seu último nome como string 2, //e a posição de teste deverá ser o último digito do seu RU. #include<stdio.h>//declaracao da bibliotecas #include<stdlib.h> #include<string.h> void fazerSiglas(char nome[59], char sobrenome[50], char ru[3], char siglas[20]) { // cabeçalho da função siglas // siglas[0] = nome[0]; // imprime a primeira letra do nome siglas[1] = nome[1]; // imprime a segunda letra do nome siglas[2] = nome[2]; // imprime a terceira letra do nome siglas[3] = nome[3]; // imprime a quarta letra do nome siglas[4] = sobrenome[0]; //imprime a primeira letra do sobrenome siglas[5] = sobrenome[1]; //imprime a segunda letra do sobrenome siglas[6] = sobrenome[2]; //imprime a terceira letra do sobrenome siglas[7] = sobrenome[3]; //imprime a quarta letra do sobrenome siglas[8] = nome[4]; // imprime a quinta letra do nome siglas[9] = nome[5]; // imprime a sexta letra do nome siglas[10] = nome[6]; // imprime a sétima letra do nome siglas[11] = nome[7]; // imprime a oitava letra do nome siglas[12] = '.'; // vai colocar um ponto entre as siglas e o ru siglas[13] = ru[0]; // imprime o numero do ru siglas[15] = '\0'; //informa o final da string } int main() { //inicio da programação sempre começa com "main" char nome[59]; //variável que recebe nome char sobrenome[50];//variável que recebe sobrenome char siglas[5]; //variável que recebe as siglas char ru[3]; //variável que recebe o numero da ru printf("Digite o seu nome: \n"); //nome da pessoa gets(nome); printf("Digite o seu sobrenome: \n"); // sobrenome da pessoa gets(sobrenome); printf("Digite o Ultimo numero do seu Ru : \n");//Ultimo valor do R gets(ru); fazerSiglas(nome, sobrenome, ru, siglas); // função que vai receber o que foi digitado em nomes,sobrenome,ru //e salvar os paramentos siglas printf("as siglas e ru digirado foi : %s\n", siglas); //imprime na tela o que foi digitado system("pause"); // pausa do sistema no final da execução return 0; // retorno "0" //fim }
Compartilhar