Jump to content

Search the Community

Showing results for tags 'algoritmo'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 112 results

  1. A outra cara do algoritmo
  2. O exercício propunha fazer duas funções uma para multiplicação e outra para criar uma fatorial, porém devem ser feitas usando apenas operações de soma e subtração bom fiz uma função para multiplicar e esta funcionando porém estou tentando utiliza-la para fazer a fatorial e o resultado sempre da zero ;-; podem me ajudar algoritmo "semnome" var a,b:inteiro funcao multi(a:inteiro;b:inteiro):real var aux:real inicio se a=0 entao retorne 0 senao aux <- 0 enquanto b>0 faca aux <- aux+a b <- b-1 fimenquanto retorne aux fimse fimfuncao funcao fatorial(a:inteiro):real var fat,res:real inicio enquanto fat > 0 faca fat<-a fat <- fat - 1 res <- multi(fat,a) fimenquanto retorne res fimfuncao inicio leia(a) escreval(fatorial(a)) fimalgoritmo
  3. Preciso fazer um programa de controle de comandas de um restaurante , envolvendo struct e arquivos, porém ñ sei por onde começar, alguém pode me ajudar? Estou fazendo da seguinte forma: struct produto{ int codigo_produto; char descrição[50]; double valor; }prod[4]; struct mesa{ int cod_mesa; char setor[30]; int codigo_garçom; }mes[3]; struct garçom{ int codigo_garçom; char nome[70]; }gar[; struct consumo{ int cod_produto,cod_consumo; char data [10]; }
  4. Boa noite estou tento problemas para realizar o tópico 3 alguém poderia me ajudar ?? Ser em algoritmo
  5. Alguém pode me orientar sobre como resolvo o algoritmo abaixo com estruturas de repetição Escrever um algoritmo que lê um número inteiro positivo e que escreve a soma de todos os números inteiros, desde 0 até o valor lido.
  6. Ao sair de um procedimento e entrar em outro, ta apresentando erro quando tento finalizar o programa. Var // Seção de Declarações das variáveis nome: vetor [1..3] de caractere telef: vetor [1..3] de caractere ema: vetor [1..3] de caractere codigo,codigo_contato,codigo_contato_cheio, menu_apagar,opc, opc1: inteiro cont, menu_mostrar,op: inteiro procedimento principal() Inicio // Seção de Comandos, procedimento, funções, operadores, etc... repita escreval ("") escreval ("=== AGENDA TELEFÔNICA ===") escreval ("") escreval ("1. Inserir novo contato") escreval ("2. Apagar contato") escreval ("3. Mostrar todos os contatos") escreval ("4. Sair") escreva ("Digite opcao: ") leia (codigo) limpatela ate (codigo=1) ou (codigo=2) ou (codigo=3) ou (codigo=4) escolha (codigo) caso 1 contato() caso 2 apagar() caso 3 mostrar() caso 4 interrompa fimescolha fimprocedimento //---------------------- NOVO CONTATO ---------------------- procedimento contato() inicio para cont de 1 ate 3 faca limpatela escreval("== INSERIR NOVO CONTATO ==") escreva ("Nome: ") leia (nome[cont]) escreva ("Telefone: ") leia (telef[cont]) escreva ("E-mail: ") leia (ema[cont]) escreval("") escreval("Usuario cadrastrado com sucesso") repita escreval("") escreval("1.Insira novo contato") escreval("2.Voltar ao menu") escreval("") escreva("Digite opção: ") leia(codigo_contato) escolha (codigo_contato) caso 1 escreva("") caso 2 interrompa limpatela principal() outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) limpatela fimescolha ate codigo_contato = 1 fimpara limpatela escreval("") escreval("Lista de contato cheia") repita escreval("") escreval("1.Voltar ao menu") escreval("2.Sair") escreval("") escreval("Digite opção") leia(codigo_contato_cheio) escolha (codigo_contato_cheio) caso 1 limpatela principal() caso 2 interrompa outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) limpatela fimescolha ate codigo_contato_cheio = 1 fimprocedimento //------------------------ Apagar contato------------------------------------ procedimento apagar() inicio limpatela escreval("== APAGAR CONTATO ==") Escreval("") escreva ("Qual contato você quer apagar? ") Escreval("") para cont de 1 ate 3 faca Escreval(cont,". ",nome[cont]) fimpara Escreval("") Escreva("Digite opção:") Leia(opc) se opc >0 entao se opc <4 entao nome[opc]<-"" telef[opc]<-"" ema[opc]<-"" Escreval("") Escreval("Contato Apagado com sucesso") repita escreval("") escreval("1.Apagar outro contato") escreval("2.Voltar ao menu") escreval("3.Sair") escreva("Digite opção:") leia(menu_apagar) Escolha(menu_apagar) caso 1 limpatela apagar() caso 2 limpatela principal() caso3 interrompa outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) senao apagar() fimse fimse fimse fimescolha ate menu_apagar = 3 fimprocedimento //-------------------------- Mostrar todos os contatos --------------------- procedimento mostrar() inicio limpatela escreval("== LISTA DE CONTATOS ==") Escreval("") para cont de 1 ate 3 faca Escreval(cont,". ",nome[cont]) fimpara Escreval("") Escreva("Digite opção:") Leia(opc1) se opc1 >0 entao se opc1 <4 entao limpatela Escreval("Nome: ",nome[opc1]) Escreval("Telefone: ",telef[opc1]) Escreval("E-mail: ",ema[opc1]) repita escreval("") escreval("1.Mostrar outro contato") escreval("2.Voltar ao menu") escreval("") escreva("Digite opção:") Leia(menu_mostrar) Escolha(menu_mostrar) caso 1 limpatela mostrar() caso 2 limpatela principal() outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) senao mostrar() fimse fimse fimescolha limpatela ate menu_mostrar = 1 fimprocedimento inicio // Seção de Comandos principal() Fimalgoritmo
  7. flavionorvel

    Converter linguagem C para visualg

    #include <stdio.h> #include <stdlib.h> // Limites de tamanhos #define MINIMO 2 #define MAXIMO 50 // Variáveis globais int opcao = 0; int linhas = MAXIMO; int colunas = MAXIMO; int matrizA[MAXIMO][MAXIMO]; int matrizB[MAXIMO][MAXIMO]; void limpar_tela(); // Retorna resposta do usuario se quer rodar novamente int rodar_novamente() { int opcao = 0; printf("\n\nDeseja rodar novamente? Digite 1 para SIM e 0 para Não: "); scanf("%d",&opcao); if (opcao == 1 || opcao == 0) { return opcao; } printf("\nOpcao invalida. Escolha novamente."); return rodar_novamente(); } // Recebe valor inteiro do usuario int receber_numero() { int numero = 0; scanf("%d",&numero); if (numero >0) { return numero; } printf("\nNúmero inválido. digite um número positivo.: "); return receber_numero(); } // Valida tamanhos de linhas e colunas int validar_tamanhos(int linhas, int colunas) { if ((linhas >= MINIMO && linhas <= MAXIMO) && (colunas >= MINIMO && colunas <= MAXIMO) && (linhas ! = colunas)) { return 1; } printf("\nLinhas e Colunas devem ser diferentes e ter valores entre %d e %d. Tente novamente.",MINIMO,MAXIMO); return 0; } // Preencher matriz void preencher_matriz(int matriz[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; for (i = 0 ; i < linhas ; i ++) { for (j = 0 ; j < colunas ; j ++) { printf("\nDigite um valor inteiro para a posicao %d-%d da matriz A: ",i,j); matriz[j] = receber_numero(); } } } // Imprimir matrizes void imprimir_matrizes(int matrizA[MAXIMO][MAXIMO], int matrizB[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; limpar_tela(); printf("\n\nMATRIZ A\n"); for (i = 0 ; i < linhas ; i++) { for (j = 0 ; j < colunas ; j ++) { printf("\nMATRIZ A POSICAO %d-%d: %d",i,j,matrizA[j]); } } printf("\n\nMATRIZ B (TRANSPOSTA DE A)\n"); for (i = 0 ; i < colunas ; i++) { for (j = 0 ; j < linhas ; j ++) { printf("\nMATRIZ B POSICAO %d-%d: %d",i,j,matrizB[j]); } } } void limpar_tela() { system("@cls||clear"); } // Laço principal int main() { int i,j; do { //Inicializar variáveis opcao = 0; linhas = 0; colunas = 0; i = 0; j = 0; do { printf("\nEntre com o tamanho para linhas: "); linhas = receber_numero(); printf("\nEntre com o tamanho para colunas: "); colunas = receber_numero(); } while (!validar_tamanhos(linhas,colunas)); // entrar com valores para a matriz A preencher_matriz(matrizA, linhas, colunas); // criar matriz transposta de A for(i = 0 ; i < linhas ; i ++) { for(j = 0 ; j < colunas ;j ++) { matrizB[j] = matrizA[j]; } } // Imprimir matrizes imprimir_matrizes(matrizA,matrizB,linhas, colunas); // Pergunta ao usuário se quer continuar opcao = rodar_novamente(); } while (opcao == 1); }me
  8. C.SALLES

    Dev c++ duvida em problema

    Faça um programa leia dois números inteiros e utilize uma função SOMAR que receba esses dois números por parâmetro e retorne a soma dos números inteiros existentes entre eles. Sou iniciante em programação e tentei fazer o programa da tal forma: #include<stdlib.h> #include<math.h> #include<stdio.h> int SOMAR((((int soma;i;n1;n2)))) { return; for (i=n1+1; i<n2; i++) { soma += i; } } int main() { int n1, n2; printf("Informe os números: "); scanf("%d %d", &n1, &n2); printf("\nSoma: %d\n", SOMAR(soma)); return 0; system ("pause"); } Não roda por vários motivos e sinceramente sei nem como resolver
  9. Gui2000

    Código de agenda em C[Resolvido]

    O código é para a colocar 3 letras a partir de 3 nomes diferentes. Ou seja:A-> AdrianoB-> BrunoC->CarolCom isso eu criaria uma agenda.Problema1-Ao eu compara o que tem dentro da letra que como não tem nada seria NULL então ele nem entra no casso que ele é igual a NULL2- Ao receber a posição da outra struct em: aux2=aux->pontpnome, ou seja ele recebe de dentro da struct letras a posição da próxima struct que é de nomes. Ao debuggar ele insinua erro ai também.Caso vejam mais um erro por favor me comuniquem. #include <stdio.h> #include <stdlib.h> #include <string.h> #define tamanho 3 typedef struct nomes vetnome; typedef struct letras letra; struct nomes{ char nome[30]; vetnome *pont; }; struct letras{ char L[4]; vetnome *pontpnome; }; void inserir (letra **let, letra tabEsp[tamanho], vetnome **ini,int qtd); int chave(char nome[30]); int main() { int qtd=0,i=0; char nome[30], resposta[30]; letra tabEsp[tamanho]; for(i=1;i<4;i++) { strcpy(tabEsp.L,"NULL"); } printf("Insira 3 nomes diferentes primeiramente: "); while(qtd<4) { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let->pontpnome=NULL; ini->pont=NULL; inserir(&let, tabEsp, &ini, qtd); system("pause"); system("cls"); qtd++; } puts("Aqui você irá colocar nomes dentro das 3 listas criadas! :)"); while(resposta!="NAO") { printf("Digite um nome: "); scanf("%s", &nome); letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let=NULL; ini=NULL; inserir(&let, tabEsp, &ini, qtd); printf("Você quer continuar?[Sim/Nao]"); scanf("%s", &resposta); system("pause"); system("cls"); } return 0; } int chave(char nome[30]) { unsigned int resultado= (int)nome[0]%tamanho; if(resultado<0) resultado=-resultado; return resultado; } void inserir (letra **Let, letra tabEsp[tamanho], vetnome **Ini, int qtd) { char nome[30]; puts("Digite um nome: "); scanf("%s", &nome); int chaveres=chave(nome); vetnome *aux2; aux2=Ini; letra *aux; aux=Let; if(chaveres==1) { if(tabEsp[chaveres].L=="NULL") { letra *novo= (letra*) malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome); aux=novo; aux2=name; aux->pontpnome=&aux2; aux2->pont=NULL; return ; } else if(tabEsp[chaveres].L!="NULL") { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if(chaveres==2) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome[30]); aux2->pont=&name; name->pont=NULL; return; } } if(chaveres==3) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if (chaveres>3) { puts("Espaço não reservado!"); } } CÓDIGO RESOLVIDO #include <stdio.h> #include <stdlib.h> #include <string.h> #define tamanho 3 typedef struct nomes vetnome; typedef struct letras letra; struct nomes{ char nome[30]; vetnome *pont; }; struct letras{ char L[4]; vetnome *pontpnome; }; void inserir (letra **let, letra tabEsp[tamanho], vetnome **ini,int qtd); int chave(char nome[30]); int main() { int qtd=1,i=0; char nome[30], resposta[30]; letra tabEsp[tamanho]={NULL,NULL,NULL}; printf("Insira 3 letras diferentes, você guardará nomes com essas iniciais depois desse processo: "); while(qtd<4) { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let->pontpnome=NULL; ini->pont=NULL; inserir(&let, tabEsp, &ini, qtd); system("pause"); system("cls"); qtd++; } puts("Aqui você irá colocar nomes dentro das 3 listas criadas! :)"); while(resposta!="NAO") { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let=NULL; ini=NULL; inserir(&let, tabEsp, &ini, qtd); printf("Você quer continuar?[Sim/Nao]"); scanf("%s", &resposta); system("pause"); system("cls"); } return 0; } int chave(char nome[30]) { unsigned int resultado= (int)nome[0]%tamanho; if(resultado<0) resultado=-resultado; return resultado; } void inserir (letra **Let, letra tabEsp[tamanho], vetnome **Ini, int qtd) { char nome[30]; puts("Digite um nome: "); scanf("%s", &nome); int chaveres=chave(nome); vetnome *aux2; aux2=Ini; letra *aux; aux=Let; if(chaveres==1) { if(tabEsp[chaveres].L==NULL) { letra *novo= (letra*) malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome); aux=novo; aux2=name; aux->pontpnome=&aux2; aux2->pont=NULL; return ; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2=name; aux2->pont=NULL; return; } } if(chaveres==2) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome[30]); aux2->pont=&name; name->pont=NULL; return; } } if(chaveres==3) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if (chaveres>3) { puts("Espaço não reservado!"); } }
  10. Por dentro do algoritmo do Instagram https://pt.shopify.com/blog/por-dentro-do-algoritmo-do-instagram?utm_campaign=International&amp;utm_source=facebook&amp;utm_medium=cpm&amp;fbadid=6129076531704&amp;utm_content=por-dentro-do-algoritmo-do-instagram&amp;fbclid=IwAR1cPIj-kcPITur0JEr22aWqMSme1cjZfLEzkvV_aXSaWk-EdH-Y4IjmDQc
  11. O Bola de Prata voltou! Entenda as estatísticas por trás do Algoritmo DataESPN
  12. Bom dia, Estou aprendendo lógica de programação e isso tem gerado muitos arquivos. Gostaria de saber se é uma ''boa prática'' colocar algoritmos simples no github? Apesar de ser coisa muito simples, são meus primeiros passos no mundo da programação.
  13. vitorianatalia

    Algoritmo Linguagem C Simples

    Sou iniciante em linguagem C e estou tentando resolver um exercício, mas não estou conseguindo. O enunciado é: Considerando a fórmula para o cálculo da distância entre dois pontos (x1, y1) e (x2, y2): a) Escreva uma função que receba como parâmetros as coordenadas de dois pontos e retorne a distância entre eles. b) Escreva um programa em C (função principal) que capture do teclado as coordenadas dos 3 vértices de um triângulo, calcule e imprima o perímetro deste triângulo, chamando a função anterior. c) Teste seu programa, simulando sua execução com as seguintes coordenadas: (4,1), (1,1), (4,5). Para resolver a a), simplesmente não conseguia nomear g como distancia que dava erro lvalue required as left operand of assignment. Para b), sei que preciso rodar a função distancia para obter os resultados de 3 contas diferentes, mas como consigo armazenar isso para somar em main depois? #include <stdio.h> #include <stdlib.h> #include <math.h> float distancia (float xa, float xb, float ya, float yb, float g) { g = sqrt(pow((xb-xa),2)+pow((yb-ya),2)); return g; } int main() { float x1, x2, y1, y2, g; // distancia entre dois pontos printf("Insira valor de x1 e x2: \n"); scanf("%f %f", &x1, &x2); printf("Insira valor de y1 e y2: \n"); scanf("%f %f", &y1, &y2); printf("A distancia entre os dois pontos e: %f", distancia(x1, x2, y1, y2, g)); return 0; }
  14. Boa tarde Senhores, Estou com esse problema de algoritmo para resolver abaixo: Ele pode ser desenvolvido pelo VISUALG. A construção de um algoritmo implica em interpretar um problema e definir passos que alcance uma solução. Desta forma, suponha o seguinte problema: Uma confeiteira deseja calcular a quantidade de ingredientes que irá gastar no final do mês para assim poder realizar a compra em uma quantidade maior e obter algum ganho em escala. Para cada mercadoria a confeiteira irá fornecer o nome do produto que irá produzir, 3 ingredientes e suas respectivas quantidades para cada receita. A confeiteira irá informar ainda a quantidade de receitas que produz do alimento por semana. Desde já agradeço a ajuda de vocês.
  15. Por que o conselho de ética do Google durou só 10 dias
  16. Facebook levanta o véu do algoritmo e explica o que mostra a cada utilizador
  17. Big data chega ao McDonald’s: empresa investe em tecnologia para menus personalizados
  18. Boa noite ,pessoal não estou conseguindo resolver um exercício de algoritmo ,poderiam me ajudar? Segue o exercício : Elabore um algoritmo que peça ao usuário que digite 1 numero maior que 500 retorne a soma dos fatoriais de cada numero digitado compreendido num inervá-lo de 2 números digitados .
  19. Matheus.Borges

    Dúvida em algoritmo

    como posso codficar um algoritmo que liste os números de 1 a 100 mas nos múltiplos de 3 substitua o número por Dia, nos múltiplos de 5 substitua por Mond e nos múltiplos de 3 e 5 substitua por DiaMond???
  20. alecram28

    Algoritmo jogo lotérico

    Boa tarde. Tenho o seguinte exercício para fazer em Java: Escreva um algoritmo para jogo lotérico. O usuário deve informar sua aposta através de 5 números inteiros no intervalo de 1 a 100. No servidor, os números da aposta devem ser armazenados em um vetor. O vetor da aposta não pode conter números repetidos. O algoritmo deve realizar o sorteio, gerando 5 números aleatoriamente no intervalo de 1 a 100. Os números sorteados também devem ser armazenados em um vetor. O vetor do sorteio não pode conter números repetidos. Se o usuário acertar menos de 3 números, ele ganha 0% da premiação. Se o usuário acertar 3 números, ele ganha 50% da premiação. Se o usuário acertar 4 números, ele ganha 75% da premiação. Se o usuário acertar os 5 números, ele ganha 100% da premiação. Na interface, o algoritmo deve informar: a. O valor da premiação. b. O vetor da aposta. c. O vetor do sorteio. d. O valor do prêmio recebido pelo usuário. Gostaria de ajuda para como posso verificar os valores iguais entre os vetores (verificar se a pessoa acertou algum numero) Obrigado!
  21. Gkings_88

    Algoritmo de Bilheteria para um Teatro

    Boa noite!! Tenho um trabalho onde tenho que fazer o desenvolvimento de um algoritmo para uma bilheteria de um teatro e estou tendo uns problema com a consulta de assentos reservados, com a venda e o faturamento, por favor, poderiam me ajudar. Obs.: A variável de tipo e porque vou ter que inserir está parte para perguntar o tipo e para ter o preço diferente para cada tipo. Este é o código: #include <stdio.h> #include <stdlib.h> int CAD[20][25]; int opcao,peca,t,m,g,sala; char data1[10]; char data2[10]; char data3[10]; char horario1[6]; char horario2[6]; char horario3[6]; char horario4[6]; char horario5[6]; char horario6[6]; char sala1[40]; char sala2[40]; char sala3[40]; int tipo; int inteiro=0; int meia=0; int gratis=0; int i; int j; void CadastrarPeca(){ printf("\nPeca 1: "); gets(sala1); printf("\nData: "); gets(data1); printf("\nHorario 1: "); gets(horario1); printf("\nHorario 2: "); gets(horario2); printf("\nPeca 2: "); gets(sala2); printf("\nData: "); gets(data2); printf("\nHorario 1: "); gets(horario3); printf("\nHorario 2: "); gets(horario4); printf("\nPeca 3: "); gets(sala3); printf("\nData: "); gets(data3); printf("\nHorario 1: "); gets(horario5); printf("\nHorario 2: "); gets(horario6); printf("\n\n"); printf("Pecas cadastradas com sucesso."); printf("\n\n"); } void ComprarIngresso(){ printf("Escolha a peca: \n\n"); printf("1 - %s\n", sala1); printf("2 - %s\n", sala2); printf("3 - %s\n\n", sala3); printf("Comando: "); scanf("%d", &peca); if(peca==1){ printf(""); } printf("\nFila: "); scanf("%d", &i); printf("\nAssento: "); scanf("%d", &j); printf("Qual tipo de ingresso: \n\n"); printf("1 - Inteira\n"); printf("2 - Meia\n"); printf("3 - Crianças carentes\n\n"); printf("Comando: "); scanf("%d", &tipo); switch(tipo){ case 1: inteiro + 1; break; case 2: meia + 1; break; case 3: gratis + 1; } if(CAD[i][j]==0){ CAD[i][j] = 1; printf("\n\nAssento reservado com sucesso!\n\n"); printf("\nIngresso: \n"); printf("Fileira: [%d] Assento: [%d]\n\n", i, j); }else{ printf("\nAssento ocupado!\n\n"); } } void CancelarIngresso(){ printf("\nFila: "); scanf("%d", &i); printf("\nAssento: "); scanf("%d", &j); if(CAD[i][j]==1){ CAD[i][j]=0; printf("\n\nReserva cancelada!\n\n"); }else{ printf("Nenhuma reserva para este assento."); } } void Faturar(){ } int main(void){ for(i = 0; i < 20; i++){ for(j = 0; j < 25; j++){ CAD[i][j]=0; } } do{ printf("_________________________________________________________"); printf("\n\n********** SEJA BEM-VINDO(A) AO TEATRO AURORA! **********\n\n"); printf("_________________________________________________________"); printf("\n\n"); printf("1 - Cadastrar Peca\n"); printf("2 - Comprar Ingressos\n"); printf("3 - Cancelar Ingresso\n"); printf("4 - Faturar\n"); printf("5 - Encerrar o Sistema\n"); printf("_________________________________________________________"); printf("\n\n"); printf("Comando: "); scanf("%d", &opcao); printf("\n\n"); switch(opcao){ case 1: CadastrarPeca(); break; case 2: ComprarIngresso(); break; case 3: CancelarIngresso(); break; case 4: break; } }while(opcao!=5); system("pause"); return 0; }
  22. Albertodias77

    Teste de programacao

    Preciso muito dessa ajuda. Crie o algoritmo que a partir de um vetor com um número indeterminado de números pares obtenha três outros vetores a partir do vetor inicial: números pares, números impares e números primos (o algoritmo terá de contemplar as três funções distintas). *recolha do vetor através da leitura de uma string contendo os valores separados por “,” *display no ecrã dos 3 vetores resultantes na forma de lista separado por “,” na seguinte ordem: números pres, ímpares e primos. Considere a hipótese de um ou mais vetores estarem vazios, indicando tal no display. *pausa no final para se verem os resultados (ReadKey)
  23. llucaahenri

    Vetores e matrizes em C

    Bom dia! Sou iniciante nessa área de programação, estou aprendendo sobre vetores e matrizes e gostaria de saber como faço para calcular elementos de um vetor e de uma matriz, eu tentei fazer usando laço For, mas não consegui. Esse exercício que estou tentando fazer. Leia um vetor de 12 posições e em seguida ler também dois valores X e Y quaisquer correspondentes a duas posições no vetor. Ao final seu programa deverá escrever a soma dos valores encontrados nas respectivas posições X e Y. Meu código! #include <stdio.h> #include <stdlib.h> #include <locale.h> int main() { setlocale(LC_ALL, "Portuguese"); int VetorX[12], VetorY[12]; int Result, X, Y, i, j; for(i = 1; i < 13; i++){ // Ler os Valores; printf("[%d] Digite um número do Vetor X. \n", i); scanf("%d", &X); } for(i = 1; j < 13; j++){ // Ler os Valores; printf("[%d] Digite um número do Vetor Y. \n", j); scanf("%d", &Y); } for(i = 0; i < 13; i++){ Result =+ VetorX; printf("O resultado é%d", Result); } return 0; }
  24. Olá, pessoas. To com um problema nesse exercício. Esse programa deve receber os itens de uma receita digitados por usuário e salvá-los dentro de um vetor, sempre verificando se o item digitado já não consta. Caso conste, deve exibir um alert( ) informando ao usuário que dado item já foi computado anteriormente, senão, deve gravar o item no vetor e repetir esse ciclo até a condição do primeiro for ser saciada. O problema é que quando o usuário digitar um valor que já existe no vetor ingredientes [ ] e o alert( ) do segundo for é exibido, após fechá-lo, o programa não dá continuidade, ou seja, no meu entender, deveria atribuir o valor false para variável verifica, com isso sair do segundo for, em seguida, ler a terceira condição: //Condicional decrementa a variável contador1, caso o item digitado seja repetido e após a primeira iteração. if (contador1 != 1 && verifica == false) { contador1--; verifica = true; } Abaixo deixo o código completo. <script> //Vetor que guarda os itens. var ingredientes = []; //Variável que guarda quantos itens serão adicionados no vetor ingredientes. var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?")); //Variável de verificação. var verifica = true; //Laço para guardar os itens s no vetor. for (var contador1 = 1; contador1 <= quantidade; contador1++){ var item = prompt("Informe o "+contador1+"º item: "); /*Laço que verifica se o item digitado já existe ou não no vetor ingredientes. Caso exista, exibe alerta e muda o valor da variável de verificação para false.*/ for (var contador2 = 0; contador2 < ingredientes.length || verifica != true; contador2++){ if (item == ingredientes[contador2]) { alert("Item já adicionado!"); verifica = false; } } //Condicional que quarda o item digitado na primeira iteração. if (contador1 == 1 && verifica == true){ ingredientes.push(item); } //Condicional que guarda o item após a primeira iteração e caso ele não seja repetido. if (contador1 != 1 && verifica == true){ ingredientes.push(item); } //Condicional decrementa a variável contador1, caso o item digitado seja repetido e após a primeira iteração. if (contador1 != 1 && verifica == false) { contador1--; verifica = true; } } console.log(ingredientes); </script>
  25. 1. Elabore um algoritmo que receba o preço (maior que zero), a categoria (1 – limpeza, 2 – alimentação, 3 – vestuário) e a situação (R – produtos que necessitam de refrigeração e N – produtos que não necessitam de refrigeração). A entrada incorreta de dados deve gerar uma mensagem de erro e imediata finalização do algoritmo. Feita a verificação calcule e mostre: a) O valor do aumento, usando as regras que se seguem. PREÇO CATEGORIA PERCENTUAL DE AUMENTO <=25 1 5% 2 8% 3 10% >25 1 12% 2 15% 3 18% b) O valor do imposto, usando as regras a seguir. O produto que preencher pelo menos um dos seguintes requisitos pagará imposto equivalente a 5% do preço, caso contrario, pagará 8%. Os requisitos são: Categoria: 2 Situação: R c) O novo preço, ou seja, o preço mais o aumento e o imposto. d) A classificação usando as regras a seguir: NOVO PREÇO CLASSIFICAÇÃO < R$ 50,00 Barato De R$ 50,00 a R$ 120,00 Normal > R$ 120,00 Caro
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.