Jump to content

lucas costa da cruz

Members
  • Posts

    19
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

lucas costa da cruz's Achievements

1

Reputation

  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); }
×
×
  • Create New...