Baixe o app para aproveitar ainda mais
Prévia do material em texto
CENTRO UNIVERSITÁRIO INTERNACIONAL UNINTER ESCOLA SUPERIOR POLITÉCNICA BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO DISCIPLINA DE LINGUAGEM DE PROGRAMAÇÃO ATIVIDADE PRÁTICA RAFAEL ROSA CEZAR – RU: 1323235 PROFº : WINDTON SEM LUN FUNG ALEGRETE – RS 2021 1 PRÁTICA 01. Escreva um algoritmo em linguagem C que atenda os seguintes requisitos: ✓ Crie um regis- tro para armazenar o seu Nome Completo e o seu RU. ✓ Solicite ao usuário que digite o seu RU e o seu Nome Completo. ✓ Crie um ponteiro para o registro. ✓ Através do ponteiro para o registro verifique se o RU digitado é um número par ou ímpar e informe a resposta na tela. ✓ Através do ponteiro para o registro imprima o Nome Completo informado de traz para frente, invertido. Por exemplo: Pedro Alvares Cabral -> larbaC seravlA ordeP Para demons- trar o funcionamento faça as capturas de tela do terminal utilizando seu nome completo e o seu RU. #include <stdio.h> #include <stdlib.h> int main() { int r1, r2, *pr1, *pr2; printf("POR FAVOR INFORME O SEU RU:1323235-RAFAEL ROSA CEZAR "); scanf_s(" %d", &r1) ; printf("AGORA DIGITE OS NUMEROS A SEGUIR: '1234567': "); scanf_s(" %d", &r2) ; pr1 = &r1; pr2 = &r2; if (*pr1 > *pr2) { printf("O PRIMEIRO RU INFORMADO TEM MAIOR VALOR: %d ", *pr1); } else if (*pr1 < *pr2) { printf("O SEGUNDO VALOR INFORMADO TEM MAIOR VALOR: %d ", *pr2); } else { printf("OS 2 VALORES INFORMADOS SÃO IGUAIS!"); } //aguarda 1 tecla getchar(); //retorno ok return 0; } PRÁTICA 02 Escreva um algoritmo em linguagem C que atenda os seguintes requisitos: ✓ Crie um vetor com a quantidade de dígitos do seu RU. ✓ Solicite que usuário digite o seu RU, cada digito digitado deve ser armazenado em uma posição do vetor. ✓ Utilizando ponteiros verifique qual o maior e menor número contido neste vetor e imprima na tela. Para demonstrar o funcionamento faça as capturas de tela do terminal utilizando seu RU. #include<stdio.h> #include<stdlib.h> #define max 7 void vetor() { int vetor[max]; int* p = vetor; int i; printf("1323235 RAFAEL ROSA CEZAR: \n\n"); for (i = 0; i < max; i++) { printf("Digitos %d: ", i + 1); scanf_s("%d", &vetor[i]); } for (i = 0; i < max; i++) { printf("%d", vetor[i]); } printf("\n\n"); int maior = p[0]; int menor = p[0]; for (i = 0; i < max; i++) { if (p [i]> maior) maior = p[i]; } for (i = 0; i < max; i++) { if (p[i] < menor) menor = p[i]; } printf("O maior valor digitado: %d\n", maior); printf("O menor valor digitado: %d\n", menor); } int main(void) { vetor(); return 0; } PRÁTICA 03 Faça um programa, em linguagem C, para calcular a área e o perímetro de um hexágono. O programa deve implementar uma função chamada calc_hexa que calcula a área e o perímetro de um hexágono regular de lado L. O programa deve solicitar ao usuário o lado do polígono, calcular e imprimir a área e o perímetro do polígono. O programa termina quando for digitado um valor negativo qualquer para o lado. A função deve obedecer ao seguinte protótipo: void calc_hexa(float l, floar *area, float *perimetro); Lembrando que a área e o perímetro de um hexágono regular são dados por: 𝑎𝑟𝑒𝑎 = 3 × 𝐿 2 × √3 2 𝑝𝑒𝑟í𝑚𝑒𝑡𝑟𝑜 = 6 × 𝐿 Para demonstrar o funcionamento faça os print de tela utilizando o primeiro número do seu RU. #include<stdio.h> #include<math.h> void calc_hexa(float l, float* area, float* per) { *per = 6 * l; *area = (3 * pow(l, 2) * sqrt(3)) / 2; } int main() { float lado, area, perimetro; printf("ATIVIDADE PRATICA 04 - ALUNO RAFAEL ROSA CEZAR\n\n\n"); printf("\nDIGITE O A MEDIDA DO LADO DO HEXAGONO:"); scanf_s("%f", &lado); while (lado > 0) { calc_hexa(lado, &area, &perimetro); printf("\n\n******** RESULTADO ********\n\n"); printf("\n\LADO DO HEXAGONO INFORMADO: %.2f\nAREA = %.2f\nPERIMETRO = %.2f", lado, area, perimetro); printf("\n\nDIGITE O A MEDIDA DO LADO DO HEXAGONO, OU DIGITE VALOR NEGA- TIVO PARA SAIR:"); scanf_s("%f", &lado); } } PRÁTICA 04 Faça, em linguagem C, uma função recursiva para o cálculo potenciação. Sabe- se que o cálculo pode ser feito através de multiplicações sucessivas. Para demonstrar o funcio- namento utilize o primeiro digito do seu RU como base e o último digito como expoente. #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <math.h> int main(void){ int x,y; int resultado; printf("RU 1323235 \n\n"); printf("83: "); scanf_s("%d", &x); printf("2"); scanf_s("%d", &y); resultado = pow(x , y); printf("Resultado = %d", resultado); printf("\n\n"); system("pause"); return 0; } int resultado(int x, int n) { if (n == 0) { return 1; if (n == 1); return x; return pow(x, n); } } PRÁTICA 05 Crie um programa, em linguagem C, que receba 10 registros contendo, Nome, RU, telefone email. Solicite que sejam digitados todos os dados de todos os registros e ao final salve-os em um arquivo.csv, utilize o ; (ponto e vírgula) para separador e campo. O nome do arquivo deve ser o seu número de RU. #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <locale.h> struct contato{ char nome[50]; char email[50]; char ru[50]; char telefone[50]; }; struct contato; void menu(); void input(); void mostrar(); void limpa(); int main(void) { setlocale(LC_ALL, "Portuguese"); int opcao; menu(); do { printf("1- Inserir Dados \n"); printf("2- Mostrar Dados \n"); printf("3- Sair \n\n"); printf("Escolha uma OPÇÃO: \n"); scanf_s("%d", &opcao); limpa(); switch (opcao) { case 1: input(); menu(); break; case 2: mostrar(); break; case 3: printf("Obrigado pela pesquisa!!!\n"); getchar(); break; default: printf("Opcao invalida\n"); getchar(); break; } } while (opcao != 3); } void menu() { system("cls"); printf("--------------- \n"); printf("RAFAEL ROSA CEZAR \n"); printf("--------------- \n"); } void input() { FILE* arquivo; contato aluno; errno_t err; err = fopen_s(&arquivo, "RU1323235.csv", "w+"); if (arquivo == NULL) { printf("O ARQUIVO NÂO PODE SER ABERTO"); } else { do { printf("\ n RAFAEL ROSA CEZAR: "); fflush(stdin); gets_s(aluno.nome); fflush(stdin); printf("RU1323235: "); gets_s(aluno.ru); fflush(stdin); printf("55999796734: "); gets_s(aluno.telefone); fflush(stdin); printf("RAFAELRCEZAR32@GMAIL.COM: "); gets_s(aluno.email); fwrite(&aluno, sizeof(contato), 1, arquivo); printf("Deseja continuar (s/n)?"); } while (_getche() == 's'); } fclose(arquivo); } void mostrar() { FILE* arquivo; contato aluno; errno_t err; err = fopen_s(&arquivo, "xxxxxxxxxx.csv", "r+"); if (arquivo == NULL) { printf("O ARQUIVO NÂO PODE SER ABERTO"); } else { while (fread(&aluno, sizeof(contato), 1, arquivo) == 1) { printf("---------------\n\n"); printf("RAFAEL ROSA CEZAR: %s\n", aluno.nome);printf("RU1323235: %s\n", aluno.ru); printf("55999796734: %s\n", aluno.telefone); printf("RAFAELRCEZAR32@GMAIL.COM: %s \n", aluno.email); printf("---------------\n\n"); } } fclose(arquivo); getchar(); } void limpa() { int ch; while ((ch = fgetc(stdin)) != EOF && ch != '\n') {} }
Compartilhar