Exemplo de Menu
Publicado por fabio 09/02/2006
[ Hits: 14.893 ]
Exemplo de Menu
(Windows) --------------------------- #include <stdio.h> #include <conio.h> #include <dos.h> #include <math.h> #include <stdlib.h> #include <desenhos.h> #define UP 72 #define DOWN 80 #define ENTER 13 char cmenu[5][15]={"> CALCULAR <", "> AJUDA <", "> AUTOR <", "> SAIR Esc<",""}; int imenu, linha, estado, tecla; void menu() { clrscr(); textbackground(4); for(linha=1;linha<=4;linha++) { gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } linha=0; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); textbackground(0); } int main() { double linf, lsup, np, fr, cnt, dpf, *pf; int menu1, menu2; pf=&dpf; textcolor(14); menu(); do { np=0; tecla=getch(); if(tecla==DOWN&&linha<4) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha++; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==UP&&linha>-1) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha--; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==DOWN&&linha==4) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha=0; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==UP&&linha==-1) { textbackground(4); gotoxy(30,linha+7); cprintf("%s", cmenu[linha+1]); linha=3; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } /* Fun‡äes do menu */ if(tecla==ENTER&&linha==0) { textbackground(0); clrscr(); printf("Entre com o intervalo de n£meros naturais.\n"); printf("De: "); scanf("%lf", &linf); printf("at‚: "); scanf("%lf", &lsup); for(cnt=linf;cnt<=lsup;cnt++) { if(cnt==2||cnt==3||cnt==5||cnt==7) { np++; } if((modf(cnt/2,pf)!=0)&&(modf(cnt/3,pf)!=0)&&(cnt!=1)) { if((modf(cnt/5,pf)!=0)&&(modf(cnt/7,pf)!=0)) { np++; } } } printf("\nH %.1lf n£meros primos", np); getch(); menu(); } if(tecla==ENTER&&linha==1) { textbackground(0); clrscr(); puts("Ajuda do NPRIMOS v.0.1\n"); puts("Este programa calcula a quantidade de n£meros primos existente no"); puts("intervalo de n£meros naturais definido pelo usu rio."); puts("Exemplo:"); puts("Selecione 'calcular', depois no campo 'De' insira o limite inferior"); puts("do intervalo, no campo 'at‚' insira o limite superior do intervalo."); puts("Ser mostrado a quantidade de n£meros primos."); getch(); menu(); } if(tecla==ENTER&&linha==2) { textbackground(0); clrscr(); waner(); puts("\nNPRIMOS v.0.1"); puts("Desenvolvido por Waner Wodson."); puts("email: wwagsilva@terra.com.br"); getch(); menu(); } if(tecla==ENTER&&linha==3) { textbackground(0); clrscr(); gotoxy(40-strlen("NPRIMOS v.0.1")/2, 12); printf("NPRIMOS v.0.1\n\n"); exit(0); } } while(tecla!=27); return 0; }
Passando parâmetros com getopt
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Preciso resolver um erro de DPKG (1)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (2)
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta