Baixe o app para aproveitar ainda mais
Prévia do material em texto
CENTRO UNIVERSITÁRIO INTERNACIONAL UNINTER ESCOLA SUPERIOR POLITÉCNICA XXXXXXXXXXXXXXXXXXXXX DISCIPLINA DE LINGUAGEM DE PROGRAMAÇÃO ATIVIDADE PRÁTICA RICHARD SANTOS ALMEIDA– RU: 3691700 PROF. WINSTON SEN LUN FUNG, ESP. SANTO ANTONIO DE JESUS - BA 2021 1 1- Escreva um algoritmo em linguagem C que atenda os seguintes requisitos: ✓ Crie um registro 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 //Declaração das bibliotecas #include <stdio.h> #include <locale.h> //criação da Struct Registro a onde irá receber o nome e ru typedef struct { char nome_aluno[150]; int ru_aluno; }struct_dados; struct_dados aluno; int main() //função main principal { struct_dados *dados = &aluno; int tamanho = 0, i; setlocale(LC_ALL, "Portuguese"); //para os caracteres ficarem em portugues printf("Informe nome do aluno: "); gets(dados->nome_aluno); fflush(stdin); printf("RU: "); scanf_s("%d", &dados->ru_aluno); tamanho = strlen(dados->nome_aluno); if (dados->ru % 2 == 0) { printf("\nRU %d e numero par\n", dados->ru_aluno); } else { printf("\nRU %d e numero Impar\n", dados->ru_aluno); } for (i = tamanho; i >= 0; i--) { printf("%c", dados->nome_aluno[i]); } return 0; } Imagem do código no computador: 2- 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. //Declaração das bibliotecas necessárias para rodar o programa #include<stdio.h> //função principal MAIN int main() { int vetor[7], i, * ptr; //O vetor e o ponteiro e as variaveis para rodar o programa int maior_num, menor_num; for (i = 0; i < 7; i++) {//o for vai rodar para inserir os numeros no vetor printf("Informe um numero para inserir no vetor: "); scanf_s("%d", &vetor[i]); //vai salvar no vetor os inserirNumerosVetoreros } //vai colocar os inserirNumerosVetoreros do vetor inserirNumerosVetor ponteiro ptr = vetor; printf("\nVetor Preenchido:\n"); //vai mostrar o vetor preenchido com os numeros informados pelo usuario for (i = 0; i < 7; i++) { printf("\n[%d] = %d ", i, ptr[i]); //vai mostrar por cada posição do vetor if (i == 0) { maior_num = ptr[i]; menor_num = ptr[i]; } else { if (ptr[i] > maior_num) { maior_num = ptr[i]; } if (ptr[i] < menor_num) { menor_num = ptr[i]; } } } printf("\nMaior numero no Vetor: %d", maior_num); printf("\nMenor numero no Vetor: %d", menor_num); return 0; } Imagem do código no computador: 3- 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, cal- cular 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: #include<stdio.h> #include<math.h> void calc_hexa(float l, float* area, float* perimetro) {//função para calcular area e o peri- metro *perimetro = 6 * l; *area = (3 * pow(l, 2) * sqrt(3)) / 2; } int main() { float lado, area, perimetro; printf("Informe o Valor do lado do hexagono:"); scanf_s("%f", &lado); while (lado > 0) {//laço para rodar ate que seja maior que zero calc_hexa(lado, &area, &perimetro); printf("\na area e o perimetro do hexagono regular de lado %.2f e igual a %.2f e o perimetro %.2f", lado, area, perimetro); printf("\nDigite o lado do hexagono:"); scanf_s("%f", &lado); } } Imagem do código no computador: 4- 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 funcionamento utilize o primeiro digito do seu RU como base e o último digito como expoente. #include <stdio.h> int potencia(int base, int expoente); int main() { int base = 0, exp = 0, resultado; printf("Informe a Base: "); scanf_s("%d", &base);//recebe o valor da base printf("Informe o expoente: "); scanf_s("%d", &exp);//expoente resultado = potencia(base, exp);//recebe o valor do calculo printf("Potenciacao de %d elevado a %d = %d", base, exp, resultado); return 0; } int potencia(int base, int expoente) {//função recursiva para calcular a potencia if (expoente == 0) return 1; else return (base * potencia(base, expoente - 1)); } Imagem do código no computador: 5- 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. 6- 7- #define _CRT_SECURE_NO_WARNINGS 8- #include <stdio.h> 9- #include <stdlib.h> 10- #include <string.h> 11- #include<locale.h> 12- #include <Windows.h> 13- #include<ctype.h> 14- 15- typedef struct 16- { 17- char nome_aluno[100], email_aluno[100], fone_aluno[100]; 18- int ru_aluno; 19- //Nome , email, ru, fone 20- } DADOS; 21- 22- 23- 24- //função principal do programa 25- int main() 26- { 27- //as variaveis necessarias para executar o programa 28- int op, cont = 0, i; 29- //vai criar a ALUNO 30- DADOS dados[10], * aluno, temp; 31- aluno = dados;//vai criar uma estrutura 32- // salvar os dados cadastrados da ALUNO 33- FILE* arquivo = fopen("3691700.csv", "w"); 34- //para os caracteres ficarem em portugues 35- setlocale(LC_ALL, "Portuguese"); 36- 37- //vai começar a rodar o programa e verificar qual foi a opção escolhida pelo usu- ario 38- 39- for(int i = 0; i < 10; i++) 40- {//vai cadastrar até dar menor que 15 41- //vai receber os dados da ALUNO 42- printf("ALUNO: %d\n", cont + 1); 43- printf("Informe nome: "); 44- gets(aluno[cont].nome_aluno);//nome 45- fflush(stdin); 46- getchar(); 47- printf("Informe email: "); 48- gets(aluno[cont].email_aluno);//email 49- fflush(stdin); 50- getchar(); 51- printf("Informe fone: "); 52- gets(aluno[cont].fone_aluno);//email 53- fflush(stdin); 54- getchar(); 55- printf("Informe RU: "); 56- scanf_s("%d", &aluno[cont].ru_aluno); 57- getchar(); 58- cont++; 59- printf("\n============================================\n"); 60- } 61- 62- 63- for (i = 0; i < cont; i++) 64- {//vai rodar todos os cadastros para salvas os dados 65- fprintf(arquivo, "%s;", aluno[i].nome_aluno);//vai salvar o nome 66- fprintf(arquivo, "%s;", aluno[i].email_aluno);//vai salvar o email 67- fprintf(arquivo, "%s;", aluno[i].fone_aluno);//vai salvar o fone 68- fprintf(arquivo, "%d;", aluno[i].ru_aluno);//vai salvar o preço 69- fprintf(arquivo, "\n");//vai salvar o arquivo 70- 71- } 72- fclose(arquivo);//vai fechar o arquivos 73-printf("\n salvos com sucesso\n"); 74- return 0; 75- } Imagem do código no computador:
Compartilhar