Ir para conteúdo

lucas costa da cruz

Membros
  • Postagens

    19
  • Registro em

  • Última visita

Tudo que lucas costa da cruz postou

  1. são 12 questões da matéria Dispositivos Móveis I eu fiz o código do exercício mas não sei se está de acordo com o enunciado lembrando que eu quero passo a passo como eu crio esses aplicativos no visual studio esse aplicativo não funciona no meu notebook me ajudar por favor 1 Crie um APP que efetue o cálculo da área de um triângulo em C# using System; class Program { static void Main() { Console.WriteLine("Digite a base do triângulo:"); double baseTriangulo = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Digite a altura do triângulo:"); double alturaTriangulo = Convert.ToDouble(Console.ReadLine()); double areaTriangulo = CalcularAreaTriangulo(baseTriangulo, alturaTriangulo); Console.WriteLine($"A área do triângulo é: {areaTriangulo}"); } static double CalcularAreaTriangulo(double baseTriangulo, double alturaTriangulo) { return 0.5 * baseTriangulo * alturaTriangulo; } } 2 Crie um APP que calcule o fatorial de um número em C# using System; class Program { static void Main() { Console.WriteLine("Digite um número para calcular o fatorial:"); int numero = Convert.ToInt32(Console.ReadLine()); long resultadoFatorial = CalcularFatorial(numero); Console.WriteLine($"O fatorial de {numero} é: {resultadoFatorial}"); } static long CalcularFatorial(int numero) { if (numero == 0 || numero == 1) { return 1; } else { long resultado = 1; for (int i = 2; i <= numero; i++) { resultado *= i; } return resultado; } } } 3 Crie um APP que calcule a idade do usuário no ano atual, para isso solicite ano de nascimento e ano atual. em C# using System; class Program { static void Main() { Console.WriteLine("Digite o ano de nascimento:"); int anoNascimento = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite o ano atual:"); int anoAtual = Convert.ToInt32(Console.ReadLine()); int idade = CalcularIdade(anoNascimento, anoAtual); Console.WriteLine($"Sua idade no ano atual é: {idade} anos"); } static int CalcularIdade(int anoNascimento, int anoAtual) { return anoAtual - anoNascimento; } } 4 Crie um APP que dada uma sequência de caracteres (digitada pelo usuário), utilizando em coloque em ordem crescente e apresente ao usuário a sequência original e o resultado ordenado. em C# using System; class Program { static void Main() { Console.WriteLine("Digite uma sequência de caracteres:"); string sequenciaOriginal = Console.ReadLine(); string sequenciaOrdenada = OrdenarSequencia(sequenciaOriginal); Console.WriteLine($"Sequência Original: {sequenciaOriginal}"); Console.WriteLine($"Sequência Ordenada: {sequenciaOrdenada}"); } static string OrdenarSequencia(string sequencia) { char[] caracteres = sequencia.ToCharArray(); Array.Sort(caracteres); return new string(caracteres); } } 5 Fazer o CRUD da Coleção abaixo em C# TXT_CPF TXT_Nome TXT_Endereco NUM_Numero TXT_Complemento TXT_Bairro TXT_Estado TXT_Cidade TXT_CEP using System; using System.Collections.Generic; class Program { static List<Livro> colecaoLivros = new List<Livro>(); static void Main() { // Exemplo de uso do CRUD AdicionarLivro("Livro 1", "Autor 1", 2022); AdicionarLivro("Livro 2", "Autor 2", 2020); MostrarLivros(); AtualizarLivro(1, "Livro Atualizado", "Novo Autor", 2021); MostrarLivros(); RemoverLivro(2); MostrarLivros(); } static void AdicionarLivro(string titulo, string autor, int ano) { Livro novoLivro = new Livro { Titulo = titulo, Autor = autor, Ano = ano }; colecaoLivros.Add(novoLivro); } static void AtualizarLivro(int id, string novoTitulo, string novoAutor, int novoAno) { Livro livroParaAtualizar = colecaoLivros.Find(l => l.Id == id); if (livroParaAtualizar != null) { livroParaAtualizar.Titulo = novoTitulo; livroParaAtualizar.Autor = novoAutor; livroParaAtualizar.Ano = novoAno; } else { Console.WriteLine("Livro não encontrado."); } } static void RemoverLivro(int id) { Livro livroParaRemover = colecaoLivros.Find(l => l.Id == id); if (livroParaRemover != null) { colecaoLivros.Remove(livroParaRemover); } else { Console.WriteLine("Livro não encontrado."); } } static void MostrarLivros() { Console.WriteLine("Coleção de Livros:"); foreach (var livro in colecaoLivros) { Console.WriteLine($"ID: {livro.Id}, Título: {livro.Titulo}, Autor: {livro.Autor}, Ano: {livro.Ano}"); } Console.WriteLine(); } } class Livro { private static int proximoId = 1; public int Id { get; } public string Titulo { get; set; } public string Autor { get; set; } public int Ano { get; set; } public Livro() { Id = proximoId++; } } 6 Em uma caderneta de poupança a taxa de juros mensal é de 12% ao mês. Faça um APP que receba o valor do deposito e o número de meses. Depois calcule e mostre o valor total da poupança. em C# using System; class Program { static void Main() { Console.WriteLine("Digite o valor do depósito:"); double valorDeposito = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Digite o número de meses:"); int numeroMeses = Convert.ToInt32(Console.ReadLine()); double valorTotalPoupanca = CalcularValorTotalPoupanca(valorDeposito, numeroMeses); Console.WriteLine($"O valor total na poupança após {numeroMeses} meses é: {valorTotalPoupanca:C}"); } static double CalcularValorTotalPoupanca(double valorDeposito, int numeroMeses) { // Taxa de juros mensal de 12% double taxaJurosMensal = 0.12; // Fórmula do montante: Valor Inicial * (1 + Taxa de Juros) ^ Número de Meses double valorTotal = valorDeposito * Math.Pow((1 + taxaJurosMensal), numeroMeses); return valorTotal; } } 7 Crie um APP que peça ao usuário o nome e idade, calcule e mostre os dias vividos pelo usuário em C# using System; class Program { static void Main() { Console.WriteLine("Digite seu nome:"); string nome = Console.ReadLine(); Console.WriteLine("Digite sua idade:"); int idade = Convert.ToInt32(Console.ReadLine()); int diasVividos = CalcularDiasVividos(idade); Console.WriteLine($"Olá, {nome}! Você viveu aproximadamente {diasVividos} dias."); } static int CalcularDiasVividos(int idade) { // Assumindo uma média de 365 dias por ano return idade * 365; } } 8 Crie um APP que receba um número e calcule/mostre o quadrado deste número em C# class Program { static void Main() { Console.WriteLine("Digite um número:"); double numero = Convert.ToDouble(Console.ReadLine()); double quadrado = CalcularQuadrado(numero); Console.WriteLine($"O quadrado de {numero} é: {quadrado}"); } static double CalcularQuadrado(double numero) { return numero * numero; } } 9 Crie um APP que receba nome, salário bruto e reajuste em percentual de um funcionário. Calcule e exiba o salário reajustado em C# System; class Program { static void Main() { Console.WriteLine("Digite o nome do funcionário:"); string nomeFuncionario = Console.ReadLine(); Console.WriteLine("Digite o salário bruto do funcionário:"); double salarioBruto = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Digite o percentual de reajuste (em %):"); double percentualReajuste = Convert.ToDouble(Console.ReadLine()); double salarioReajustado = CalcularSalarioReajustado(salarioBruto, percentualReajuste); Console.WriteLine($"O salário de {nomeFuncionario} reajustado é: {salarioReajustado:C}"); } static double CalcularSalarioReajustado(double salarioBruto, double percentualReajuste) { // Convertendo o percentual para um fator multiplicador (ex: 10% -> 1.1) double fatorMultiplicador = 1 + percentualReajuste / 100; // Calculando o salário reajustado double salarioReajustado = salarioBruto * fatorMultiplicador; return salarioReajustado; } } 10 Tendo como dado a altura e o sexo de uma pessoa, crie um APP que calcule e mostre seu peso ideal, usando as seguintes fórmulas: em C# Para homens: (72.2 * h) – 58 Para mulheres: (62.1 * h) – 44.7 h = altura using System; class Program { static void Main() { Console.WriteLine("Digite a altura em metros:"); double altura = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Digite o sexo (M para masculino, F para feminino):"); char sexo = Convert.ToChar(Console.ReadLine().ToUpper()); double pesoIdeal = CalcularPesoIdeal(altura, sexo); Console.WriteLine($"O peso ideal é: {pesoIdeal} kg"); } static double CalcularPesoIdeal(double altura, char sexo) { double pesoIdeal; if (sexo == 'M') { pesoIdeal = (72.2 * altura) - 58; } else if (sexo == 'F') { pesoIdeal = (62.1 * altura) - 44.7; } else { throw new ArgumentException("Sexo inválido. Use M para masculino ou F para feminino."); } return pesoIdeal; } } 11 Crie um APP que receba a hora e quantidade de minutos, então exiba o total de minutos Ex.: em C# Entrada: 2 horas e 30 minutos Saída: 150 minutos using System; class Program { static void Main() { Console.WriteLine("Digite a quantidade de horas:"); int horas = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite a quantidade de minutos:"); int minutos = Convert.ToInt32(Console.ReadLine()); int totalMinutos = CalcularTotalMinutos(horas, minutos); Console.WriteLine($"O total de minutos é: {totalMinutos} minutos"); } static int CalcularTotalMinutos(int horas, int minutos) { // Convertendo as horas para minutos e somando com os minutos dados int totalMinutos = horas * 60 + minutos; return totalMinutos; } } 12 Crie um APP que obtenha o nome do usuário e senha, e quando o usuário clicar no botão Salvar, guarde estes dados se utilizando do conceito de Dados Transientes e mostre o valor quando usuário clicar no botão de consulta em C# using System; class Program { // Variáveis estáticas para armazenar os dados de forma transitória static string nomeUsuario; static string senhaUsuario; static void Main() { Console.WriteLine("Digite o nome de usuário:"); nomeUsuario = Console.ReadLine(); Console.WriteLine("Digite a senha:"); senhaUsuario = Console.ReadLine(); Console.WriteLine("Dados salvos com sucesso!"); // Botão de consulta ConsultarDados(); } static void ConsultarDados() { Console.WriteLine("\nConsulta de Dados:"); if (!string.IsNullOrEmpty(nomeUsuario) && !string.IsNullOrEmpty(senhaUsuario)) { Console.WriteLine($"Nome de Usuário: {nomeUsuario}"); Console.WriteLine($"Senha: {senhaUsuario}"); } else { Console.WriteLine("Nenhum dado salvo."); } } } Dispositivos Móveis I exercício.txt
  2. boa noite pode me ajuda eu fiz esse exercício e queria saber se está certo de acordo com o enunciado 4) Faça um programa que calcule e imprima o CR do período para os alunos de Sistemas de Informação. Para cada aluno o programa devera ler: a) Matrícula; b) Quantidade de disciplinas cursadas; c) Soma das médias finais das disciplinas. Além do CR de cada aluno, o programa deverá imprimir o maior CR dos alunos que cursaram 5 disciplinas ou mais. #include <stdio.h> #include <stdlib.h> void main() { int matricula, disciplinas, i; float cr, maior=0, nota, notas; do { notas = 0; printf("\nDigite a matricula: "); scanf("%d", &matricula); if (matricula < 1 || matricula > 5000) break; printf("\nDigite a quantidade de disciplinas cursadas: "); scanf("%d", &disciplinas); i = 1; while(i <= disciplinas) { printf("\nDigite a nota da disciplina %d: ", i); scanf("%f", &nota); notas += nota; i++; } cr = notas / disciplinas; printf("\nMatricula: %d", matricula); printf("\nNumero de disciplinas: %d", disciplinas); printf("\nCR: %f", cr); if (disciplinas > 4 && cr > maior) { maior = cr; } } while(matricula > 0 && matricula <= 5000); printf("\nMaior CR dos alunos: %f", maior); }
  3. boa noite pode me ajuda eu fiz esse exercício e queria saber se está certo de acordo com o enunciado 3) Faça um programa que leia uma quantidade de cartões determinada pelo digitador, contendo a idade e o sexo de uma pessoa (1-Masculino, 2-Feminino). Calcule e imprima a idade média destas pessoas, quantas pessoas do sexo feminino estão na faixa dos 18 aos 25 anos e número total de pessoas do sexo masculino. #include <stdio.h> int main(void) { int quantidade, idade, sexo, numPessoa; int numMulher = 0; int numHomem = 0; int idadeTotal = 0; int num = 1; printf("Quantidade de cartoes determinada pelo digitador: "); scanf("%d", &quantidade); numPessoa = quantidade; while (quantidade > 0) { printf("Entre com a idade da pessoa do cartao numero %d: ", num); scanf("%d", &idade); idadeTotal += idade; printf("Entre com o sexo da pessoa do cartao numero %d: ", num); scanf("%d", &sexo); if (sexo == 1) { numHomem += 1; } else if (sexo == 2) { if (18 <= idade && idade <= 25) numMulher += 1; } quantidade--; num++; } printf("A idade media e %.1f\n", ( (float) idadeTotal) / numPessoa); printf("O total de mulheres de 18 aos 25 anos e %d.\n", numMulher ); printf("\nO numero de homens e %d.\n", numHomem); return 0; }
  4. desculpe por não ter respondido eu estava ocupado com as tarefas esse exercício é do ano passado e eu ainda preciso resolver isso posso ser seu amigo
  5. boa noite pode me ajuda eu fiz esse exercício e queria saber se está certo de acordo com o enunciado 2) Faça um programa que tenha uma função que receba dois números inteiros retorne o menor número. #include <stdio.h> #include <iostream> #include <locale.h> #define MAX 30 using namespace std; void preencher_vetor (int n [], int tam){; for (int i=0; i<tam;i++){ cin>> n [i]; } } void imprimir_vetor (int n [], int tam){; for (int i=0; i<tam;i++){ cout<<n [i] << ""; } } int menor(int n[], int tam){ int aux_menor = n[0]; for (int i=0; i<tam; i++){ if(aux_menor> n[i+1]){ aux_menor = n[i+1]; } } return aux_menor; } int main(){ int n [MAX], tam; cout<<"Digite o tamanho do vetor" << endl; cin>>tam; n[tam]; preencher_vetor(n,tam); cout<< endl; imprimir_vetor(n,tam); cout<<"Menor elemento do vetor" << menor(n,tam) << endl; return 0; } 3) Escreva uma função que calcule e retorne a distância entre dois pontos ( x1, y1) e (x2, y2). Todos os números e valores de retorno devem ser do tipo float. #include <iostream> #include <math.h> using namespace std; struct Ponto{ float x; float y; }; void LerRetangulo(Ponto ret[], int tam) { for(int i = 0; i < tam; i++) { cout << "digite coordenadas x e y do ponto " << i + 1 << endl; cin >> ret[i].x >> ret[i].y; } } double CalcDistancia(Ponto ret[], int tam) { double distancia = 0; for(int i = 0; i < tam; i++) { distancia += sqrt(pow(ret[i].x, 2) + pow(ret[i].y, 2)); } return distancia; } void imprimir(double distancia, Ponto ret[], int tam) { for (int i = 0; i < tam; i++) { cout << "Ponto " << i << " = " << ret[i].x << ", " << ret[i].y <<endl; } cout << "Distância = " << distancia << endl; } int main(int argc, char *argv[]) { Ponto retangulo[4]; LerRetangulo(retangulo, 4); imprimir(CalcDistancia(retangulo, 4), retangulo, 4); }
  6. boa tarde fiz esse exercício e não tenho certeza se está de acordo com o enunciado pode me ajudar por favor 3) Faça um programa que leia as seguintes informações sobre os alunos: • Nome do aluno; • Número de faltas. • Crie uma turma com 5 alunos. • Cada turma terá 20 aulas no semestre. O programa deve imprimir o percentual de faltas para cada aluno e ao final do processamento o total de alunos reprovados por falta (25% de faltas). #include <stdio.h> #include <stdlib.h> #include <math.h> main(){ float notap; float media; float notas; int faltas; float notat; int i; int cont,contr; int aprovado,reprovado; for(i=0; i<2; i++){ printf("Digite Suas Notas \n"); printf("Nota 1:"); scanf("%f", &notap); printf("Digite sua segunda nota \n:"); scanf("%f", &notas); printf("Digite sua terceira nota\n :"); scanf("%f", &notat); printf("Digite sua quarta nota\n :"); scanf("%f", &notat); printf("Digite sua quinta nota\n :"); scanf("%f", &notat); printf("Digite sua faltas \n"); scanf("%d",&faltas); media=((notap + notas + notat+ notat+ notat)/5); printf("Sua media sera %2.f\n",media); if(media>=9){ cont++; printf("Seu conceito esta A. voce foi aprovado\n"); }else if(media>=7.5){ printf("Seu conceito esta B. voce foi reprovado\n"); }else if(media==5.0){ printf("Seu conceito sera C.voce foi reprovado\n"); }else if(media<5.0){ printf("Seu conceito esta D. voce foi aprovado\n"); }else if(media>=8.5){ printf("Seu conceito esta E. voce foi aprovado\n"); }else if(media>=9.5){ contr++; printf("voce esta Reprovado Va Estudar\n"); }else if(faltas>25){ printf("voce esta Reprovado\n"); } else if(media< 7.0 && faltas<= 25){ printf("voce esta reprovado\n"); } } printf("Foram aprovados %d\n",cont); printf("Foram reprovados %d\n",contr); }
  7. obrigado por ter me ajudado e desculpe por não ter visto a notificação é que eu uso o pc e dificilmente eu entro no pc porque não sou o único que uso o pc
  8. boa noite fiz esse exercício e não tenho certeza se está de acordo com o enunciado pode me ajudar por favor 3- Ler uma frase e contar quantos caracteres são espaços em branco #include <stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> int main(void) { // variáveis char texto[12]; // vetor que recebe a entrada feita pelo usuário int i, j, contador=0; // variáveis para controlar o loop principal, secundário e a quantidade de caracteres encontrados, respectivamente char vogais[] = "aeiouAEIOU"; // vetor de vogais // captura do texto que será digitado pelo usuário printf("Digite sua frase: "); gets(texto); // contagem de vogais da entrada feita pelo usuário int ContadorEspacos=0; for (i=0; i<strlen(texto); i++) { if (texto[i] == ' ') { ContadorEspacos++; } for (j=0; j<strlen(vogais); j++){ if (texto[i] == vogais[j]) { contador++; } } } // exibição do número de vogais encontrados if (contador == 1) { printf("\n\no texto informado possui 1 vogal\n\n"); } else { printf("\n\no texto informado possui %d vogais\n\n", contador); } return 0; }
  9. boa noite fiz esse exercício e não tenho certeza se está de acordo com o enunciado pode me ajudar por favor Faça um programa em C que leia do teclado informações de 10 carros. Os dados a serem lidos são: marca, ano e preço. • Crie quatro funções que façam o seguinte: 1ª) Ordenação crescente do vetor pelo campo ano (ordenação Quick); 2ª) Retorne um valor float, que será a média geral do preço dos carros (somar os preços de todos os carros / total de carros); 3ª) Busca binária pelo campo ano, que deverá ser passado por parâmetro. Caso seja encontrado, a função deverá retornar um valor inteiro, que será a posição do vetor que se encontra este carro, caso não exista, a função deverá retornar um valor inteiro igual a -1. • Crie um vetor com 10 posições de struct. • Os campos do struct serão: marca, ano e preço. • Preencha o vetor. • O parâmetro a ser passado para as três funções deverão ser por referência (use o *) e por valor. • Chame a função de ordenação. • Exiba o vetor ordenado. • Chame as outras duas funções exibindo a média dos preços dos carros e a posição do vetor onde está armazenado o carro fabricado em um ano específico, ou o valor -1, caso não encontre. #include<stdio.h> #include<stdlib.h> #include <locale.h> #define N 10 typedef struct carro { char marca[50]; int ano; float preco; }Carro; /////funçoes do ordençao////////// int dividir(Carro vetor[],int esq,int dir) { int cont=esq; Carro aux; for(int i=esq+1; i < dir+1;i++) { if (vetor[i].ano < vetor[esq].ano) { cont++; aux=vetor[i]; vetor[i] = vetor[cont]; vetor[cont]= aux; } } aux = vetor[esq]; vetor[esq]=vetor[cont]; vetor[cont]=aux; return cont; } //////funçao de ordenação void quick(Carro *vetor,int esq,int dir) { int pos; if(esq < dir) { pos=dividir(vetor,esq,dir); quick(vetor,esq,pos-1); quick(vetor,pos+1,dir); } } ///////faz uma pesquisa binaria int Busca_Binaria(Carro *vetor,int ano,int inicio,int fim) { int meio; if(inicio<=fim) { meio=(inicio+fim)/2; if(ano==vetor[meio].ano)return meio; else { if(ano < vetor[meio].ano) return Busca_Binaria(vetor,ano,inicio,meio-1); else return Busca_Binaria(vetor,ano,meio+1,fim); } } return -1; } //////calcula media ////// float MediaPreco(Carro *vetor,int tam) { float soma=0; for(int i=0;i < tam;i++) { soma+=vetor[i].preco; ///soma o preço de todos os veiculos } return soma/N; ////retorna o total dividido pelo numero de veiculos } ////////lista os veiculos da lista/////// void Listar_Veiculos(Carro *vetor,int tam) { for(int i=0;i < tam;i++) { printf("%dº Veiculo:\n",i+1); printf(".........................\n"); printf("marca: %s\n",vetor[i].marca); printf("ano: %d\n",vetor[i].ano); printf("preço: R$%.2f\n",vetor[i].preco); printf(".........................\n\n\n"); } } void main() { setlocale(LC_ALL, "portuguese"); Carro Carros[N]; int busca_ano; char decisao; int Retorno_funcao;////irá receber o retorno da funçao de pesquisa printf("cadastre %d veiculos\n\n",N); for(int i =0;i<N;i++) { printf("digite a marca do %dº carro:\n",i+1); scanf("%s",Carros[i].marca); system("cls"); printf("digite o ano do %dº carro:\n",i+1); scanf("%d",&Carros[i].ano); system("cls"); printf("digite o valor do %dº carro:\n",i+1); scanf("%f",&Carros[i].preco); system("cls"); } quick(Carros,0,N-1); Listar_Veiculos(Carros,N); printf("a média dos preços dos veiculos é de R$%.2f\n\n\n",MediaPreco(Carros,N)); printf("\deseja pesquizar um veiculo? digite'S'para 'Sim'\n"); scanf("%s",&decisao); if (decisao=='s'||decisao=='S') { printf("digite o ano do veiculo\n"); scanf("%d",&busca_ano); Retorno_funcao = Busca_Binaria(Carros,busca_ano,0,N); if (Retorno_funcao ==-1) printf("veiculo não encontrado\n\n"); else printf("veiculo encontrado na posiçao %d\n\n",Retorno_funcao); } }
  10. boa noite fiz esse exercício e não está certo pode me ajudar por favor 1- Inserir dados da consulta; a. Iniciar atendimento; 2- Exibir consultas; 3- Consultar atendimentos; 4- Finalizar programa. O programa deve funcionar da seguinte maneira. Quando um cliente chega na veterinária, o atendente antes de iniciar o atendimento insere os dados dele no sistema e logo após inserir os dados é apresentado a opção de iniciar o atendimento. Os dados devem ficar em um arquivo binário e servirá para todos que forem atendidos na veterinária, já o atendimento deve ser um arquivo de texto, gerado com o nome do animal + o nome do dono. Ao finalizar a entrada dos dados de atendimento, que deve ser um arquivo de texto para cada atendimento, o sistema retorna para o menu. O arquivo de texto do atendimento, pode ser feito com a inserção de várias linhas de texto até que o veterinário não queira mais inserir texto finalizando o arquivo, este não poderá ser reaberto. A opção Exibir consultas, apresenta todos as consultas cadastradas. A opção Consultar atendimentos, permite que o usuário digite o nome do animal+dono e seja feita a busca pelo arquivo. #include <stdio.h> #include <stdlib.h> #include <string.h> #include <locale.h> typedef struct { char nome1[100]; char nome2[100]; int data1, data2; float valor; } clinica; void menu(); void Inserirdadosdaconsulta(); void escreverdadosarquivo(); void carregararquivo(); void Exibirconsultas(); void Finalizarprograma(); void Consultaratendimentos(); void Iniciaratendimento(); int cont=0; FILE *arquivo; animal_+_dono f[1000]; animal_+_dono F; int main () { char opc; setlocale(LC_ALL,"Portuguese"); do { fflush(stdin); menu(); fflush(stdin); printf("\nDeseja continuar: s/n?"); scanf("%c",&opc); } while (opc != 'n'); return 0; } void Inserirdadosdaconsulta() { printf("Para finalizar o cadastro clica ponto:\n"); while (1) { fflush(stdin); printf("\nNome1? "); gets(f[cont].nome1); if ( !strcmp(f[cont].nome1,".") ) break; printf("\nNome2? "); gets(f[cont].nome2); if ( !strcmp(f[cont].nome2,".") ) break; printf("\nData1? "); scanf("%i",&f[cont].data1); printf("\nData2? "); scanf("%i",&f[cont].data2); printf("\nValor? "); scanf("%f",&f[cont].valor); cont++; } Finalizarprograma(); } void Exibirconsultas() { for (int i = 0; i < cont; i++) { printf("%i\t%s\t%7.2f\n", f[i].data1, f[i].data2, f[i].nome1, f[i].nome2, f[i].valor); } Finalizarprograma(); } void escreverdadosarquivo(){ if ( (arqv = fopen("dados.x","wb"))== NULL ) { printf("Arquivo não pode ser criado\n"); exit(1); } for (int i = 0; i < cont; i++) { fwrite(&f[i],sizeof(animal+dono),1,arqv); } printf("Dados digitados com sucesso!\n"); fclose(arqv); } Finalizarprograma(); } void carregararquivo(){ if ( (arqv = fopen("dados.x","r"))== NULL ) { printf("O arquivo não pode ser aberto\n"); exit(1); } // limpeza de todos os itens dentro da memória antes de carregar os dados do arquivo memset(f, 0, sizeof(f)); cont = 0; while (1) { fread(&F,sizeof(animal+dono),1,arqv); if ( feof(arqv) ) break; f[cont] = F; cont++; } printf("Abertura dos dados na memória com sucesso!"); fclose(arqv); } Iniciaratendimento(); while (1) { fread(&F,sizeof(animal+dono),1,arqv); if ( feof(arqv) ) break; } } fclose(arqv); printf("\n %i\t %s\t %7.2f", f.data1, f.data2, f.nome1, f.nome2, f.valor); } printf("Arquivo não pode ser aberto\n"); exit(1); } } void Consultaratendimentos(){ char nome1[100]; char nome2[100]; animal+dono aux[100]; int i = 0; fflush(stdin); printf("Digite o atendimento que você quer consultar?"); gets(nome1); printf("Digite o atendimento que você quer consultar?"); gets(nome2); Iniciaratendimento(); while (1) { fread(&F,sizeof(animal+dono),1,arqv); if ( feof(arqv) ) break; if (strstr(F.nome1, F.nome2, nome) != NULL) { aux[i] = F; i++; } } fflush(stdin); for (int x = 0; x < i; x++){ printf("\n %i\t %s\t %7.2f", aux[x].data1, aux[x].data2, aux[x].nome1, aux[x].nome2, aux[x].valor); } fclose(arqv); } void Iniciaratendimento() { if ( (arqv = fopen("dados.x","r")) == NULL ) { printf("Não foi possível abrir o arquivo!!\n"); exit(1); } } void Finalizarprograma() { fclose(arqv); } void menu() { int opc; printf("\n1- Inserir dados da consulta"); printf("\na.- Iniciar atendimento"); printf("\n2- Exibir consultas"); printf("\n3- Consultar atendimentos"); printf("\n4- Finalizar programa"); printf("\nEscolha sua opcao: "); scanf("%d",&opc); switch (opc) { case 1: Inserirdados(); break; case 2: Iniciaratendimento(); break; case 3: Exibirconsultas(); break; case 4: Consultaratendimentos(); break; case 5: Finalizarprograma(); break; default: printf("\nOpcao inválida"); } }
  11. #include <stdio.h> #include <stdlib.h> #define MAXTAM 1000 int Frente, Tras, Lista[MAXTAM]; void Lista_Construtor(){ Frente=0; Tras=-1; } int Lista_Vazia(){ if(Tras==-1) return 1; else return 0; } int Lista_Cheia(){ if(Tras==MAXTAM-1) return 1; else return 0; } int Lista_Tamanho(){ return Tras+1; } int Lista_Inserir_Inicio(int Valor){ if(Lista_Cheia()){ return 0; }else{ /*se quero inserir na posição 0, vou deslocar todos os elementos para frente*/ for(int i=Tras+1;i>Frente;i--){ Lista[i]=Lista[i-1]; } Lista[Frente]=Valor; Tras++; return 1; } } int Lista_Inserir_Fim(int Valor){ if(Lista_Cheia()){ return 0; }else{ Tras++; Lista[Tras]=Valor; return 1; } } int Lista_Inserir(int Valor, int Posicao){ if(Lista_Cheia()){ return 0; }else{ /* Para verificar se a posição está no meio da lista */ if(Posicao>Frente && Posicao<Tras){ for(int i=Tras+1;i>Posicao;i--){ Lista[i]=Lista[i-1]; } Lista[Posicao]=Valor; Tras++; return 1; }else{ return 0; } } } int Lista_Remover_Inicio(int *Valor){ if(Lista_Vazia()){ return 0; }else{ *Valor =Lista[Frente]; for(int i=Frente;i<Tras;i++){ Lista[i]=Lista[i+1]; } Tras--; } } int Lista_Remover_Fim(int *Valor){ if(Lista_Vazia()){ return 0; }else{ *Valor=Lista[Tras]; Tras--; return 1; } } int Lista_Remover(int *Valor, int Posicao){ if(Lista_Vazia()){ return 0; }else{ if(Posicao>Frente && Posicao<Tras){ *Valor=Lista[Posicao]; for(int i=Posicao;i<Tras;i++){ Lista[i]=Lista[i+1]; } Tras--; return 1; } } } int Lista_Get_toda(int *Valor){ if(Lista_Vazia()){ return 0; }else{ *Valor=Lista[Frente]; return 1; } } int Lista_Get_inicio(int *Valor){ if(Lista_Vazia()){ return 0; }else{ *Valor=Lista[Frente]; return 1; } } int Lista_Get_Fim(int *Valor){ if(Lista_Vazia()){ return 0; }else{ *Valor=Lista[Tras]; return 1; } } int Lista_Busca_Valor(int Valor, int *Posicao){ int i; if(Lista_Vazia()){ return 0; }else{ for(i=Frente;i<Tras;i++){ if(Lista[i]==Valor){ break; } } if(i==Tras){ return 0; }else{ *Posicao=i; return 1; } } } int Lista_Busca_Posicao(int *Valor, int Posicao){ if(Lista_Vazia()){ return 0; }else{ if(Posicao>Frente && Posicao<Tras){ *Valor=Lista[Posicao]; return 1; }else{ return 0; } } } int main(){ int i,Valor,op=0,pos; Lista_Construtor(); while(op!=12){ printf("*** Menu de opções ***\n"); printf("1-Inserir início\n"); printf("2-Inserir fim\n"); printf("3-Inserir meio\n"); printf("4-Excluir início\n"); printf("5-Excluir fim\n"); printf("6-Excluir meio\n"); printf("7-Mostrar toda lista\n"); printf("8-Mostrar primeiro item da lista\n"); printf("9-Mostrar último item da lista\n"); printf("10-Mostrar a posição de um item da lista\n"); printf("11-Mostrar o valor de uma posição\n"); printf("12-Sair\n"); printf("Escolha uma opção: "); scanf("%d", &op); switch(op){ case 1: printf("Digite o valor a ser inserido: "); scanf("%d", &Valor); Lista_Inserir_Inicio(Valor); break; case 2: printf("Digite o valor a ser inserido: "); scanf("%d", &Valor); Lista_Inserir_fim(Valor); break; case 3: printf("Digite o valor a ser inserido: "); scanf("%d", &Valor); printf("Digite a posição que deseja inserir: "); scanf("%d", &pos); Lista_ Inserir_meio(int Valor, pos); break; case 4: printf("Digite a remoção do início: "); scanf("%d", &*Valor); Lista_ Excluir_inicio(*Valor); break; case 5: printf("Digite a remoção do fim: "); scanf("%d", &*Valor); Lista_ Excluir_fim(*Valor); break; case 6: printf("Digite a remoção do meio: "); scanf("%d", &Valor); printf("Digite a posição que deseja remover: "); scanf("%d", &*Posicao); Lista_ Excluir_meio(intValor, * pos); break; case 7: printf("Digite ao a mostrar toda lista: "); scanf("%d", &Valor); Lista_ mostrar_toda_lista(Valor); break; case 8: printf("Digite ao a mostrar primeiro item da lista: "); scanf("%d", &*Valor); Lista_ mostrar_primeiro_item_da_lista(*Valor); break; case 9: printf("Digite ao a mostrar último item da lista: "); scanf("%d", &*Valor); Lista_ mostrar_ultimo_item_da_lista(*Valor); break; case 10: printf("Digite ao a mostrar a posição de um item da lista: "); scanf("%d", &Valor); printf("Digite a posição que deseja mostrar na lista: "); scanf("%d", &* pos); Lista_ mostrar_posicao_de_um_item_da_lista(intValor, *pos); break; case 11: printf("Digite ao a mostrar o valor de uma posição: "); scanf("%d", &*Valor printf("Digite a posição que deseja mostrar no valor: "); scanf("%d", &pos); Lista_ mostrar_posicao_de_um_valor_da_lista(int*Valor, pos); break; case 12: default: printf("Valor Invalido!\n"); system("PAUSE"); } } return 0; }
  12. esse é outro exercício com relação a questão 1 vou te enviar o código do que fiz #include <stdio.h> #include <locale.h> #include <stdlib.h> struct procedimento{ int idade, duracao; float V; char nome[50]; }; int main(){ setlocale(LC_ALL, "Portuguese"); int nprocedimento; struct procedimento *vet; printf("Digite quantos procedimentos tem?: "); scanf("%i", &nprocedimento); vet=(struct procedimento *)malloc(nprocedimento * sizeof(struct procedimento)); if(vet==NULL){ printf("Não foi possível alocar espaço de memória!"); exit(1); } // Entrada de dados dos procedimentos printf("\n Digitação dos dados do procedimento \n"); for(int i=0;i<nprocedimento; i++){ printf("Nome do %i° procedimento: ", i+1); scanf(" %s", vet[i].nome); printf("Digite o valor do %i° procedimento: ", i+1); scanf("%f", &vet[i].V); printf("Digite a duração (em dias) do %i° procedimento: ", i+1); scanf(" %i", &vet[i].duracao); } free(vet); }
  13. não estou conseguindo fazer esse exercício Faça um programa em C que leia inicialmente a quantidade de procedimentos que foram realizados. Depois apresente como resultado: a) As informações de cada procedimento (mostrar normalmente); b) A quantidade total de dias que ele ficou internado; e c) O valor total que ele deverá pagar no momento de sua alta. •OBS: Utilize duas funções para calcular os totais de a e b.
  14. boa tarde pode me ajudar no ponteiro e alocação dinâmica Um determinado paciente permaneceu internado em um hospital em um período de tempo. Durante sua internação vários procedimentos foram efetuados. Para cada procedimento, as seguintes informações foram armazenadas no sistema: • Nome do procedimento; • Valor do procedimento; • Tempo de execução do procedimento (em dias); #include <stdio.h> #include <stdlib.h> float pacienteinformação (float *V, int procedimentos) { int i; float soma_ procedimentos=0; for (i=0; i< procedimentos; i++) { soma_ procedimentos=soma_ procedimentos+V[i]; } return soma_ procedimentos/ procedimentos; } Void main () { Int i, n; float *informação; printf (“Qual é o nome do paciente ? “); scanf (“%d”, &n); informação = (float*)malloc (n*sizeof(float) ); if (informação==NULL) { printf (“Não foi possível alocar a área desejada\n”); exist (1); } printf (“*** Digitação dos dados da informação ***\n\n”); for (i=0; i<n; i++) { printf (“Digite a informação do paciente %d: ”, i+1); scanf (“%f”, &informação [i]); } printf (“O paciente geral desta informação é: % .2f\n\n ”, pacienteinformação (informação, n) ); free (informação); }
×
×
  • Criar Novo...