Exemplo de Menu
Publicado por fabio 09/02/2006
[ Hits: 14.767 ]
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; }
Calculo calorico visando perca de gordura e definicao muscular
Rotinas para manipulação de matrizes
Contagem de elementos de um array
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
ASRock H310CM-HG4 vs Linux (4)
Dongle Bluetooth 5.0 não funciona no Pop Os 22.04 (2)