Exemplo de Menu
Publicado por fabio 09/02/2006
[ Hits: 15.204 ]
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;
}
Algorítmo para Calcular Raiz Quadrada
Conjunto de Mandelbrot (Fractal)
Conhecendo atributos do Ncurses
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Como fazer a instalação do Samba
Como fazer a conversão binária e aplicar as restrições no Linux
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (19)
Formas seguras de instalar Debian Sid (13)
Malware encontrado em extensões do Firefox. (0)
Fiz uma pergunta no fórum mas não consigo localizar [RESOLVIDO] (21)









