Neonglow Posted January 3, 2006 at 12:15 PM Report #10635 Posted January 3, 2006 at 12:15 PM Preciso de fazer um programa em C para trabalho de recuperação de modular na escola, o tema e o tamanho é à minha escolha, apenas precisa de ter Arrays e Menus. O problema é o seguinte: - Já não trabalho com o C à muito tempo - Estou sem ideias para o programa Agradecia toda a ajuda que fosse possivel, seja uma ideia...seja algoritmo....um bocadinho de codigo já compilado....sei lá....................HELP ME PLZ Obrigado P.S. - O programa pode ser pequeno desde que tenha estas duas coisas, Arrays e Menus
saramgsilva Posted January 3, 2006 at 02:40 PM Report #10640 Posted January 3, 2006 at 02:40 PM bem se ja nao te lembra bem de c, o melhor é ires ver uns tutoriais...e ler em especial a parte de menus e arrays... www.saramgsilva.com As minhas apps no WP7 Marketplace Youtube : Galinho - Windows Phone 7.5
deathseeker25 Posted January 3, 2006 at 02:45 PM Report #10642 Posted January 3, 2006 at 02:45 PM Com menus e arrays....Não me parece que seja dificil. Os menus podes elaborar através de um switch, e os arrays é uma questão de reveres a matéria. Quanto á parte gráfica não existem especificações? Para arranjares um tema tambem não será assim muito complicado. Existem milhares de coisas que podes fazer com menus e arrays... Cumps
vbmaster Posted January 3, 2006 at 05:36 PM Report #10652 Posted January 3, 2006 at 05:36 PM Sim, não é gráfico pois não? É apenas um console project right?
Gurzi Posted January 3, 2006 at 08:59 PM Report #10685 Posted January 3, 2006 at 08:59 PM Bem vou te ajudar num tema que fiz á pouco tempo e adorei apesar de ter me custado muito a conseguir compreender como se fazia com a ajuda do Livro do Luis Damas. Ora bem o resultado final que se pretende é um jogo do Galo. Uma ideia para esse projecto é fazeres do tipo um Menu com uma área prática e outra com uma área de Lazer em que na área Prática fazes do tipo uma calculadora e na área de Lazer incluis o Jogo do Galo.. Agora Perguntas tu o que preciso de fazer para que o jogo do galo corra.. bem esta foi uma pergunta que sozinho demorei um pouco grande de tempo a entender porque no livro também não explicava e simplesmente comecei a pensar que sozinho nunca chegaria a tal pensamento para construir um algoritmo.. o que precisas é de construir 2 funçoes uma para inicializar o vector que terá que ser 3 por 3 devido ás 9 casas do jogo do galo e começas cada casa com o valor ' '(espaço em branco). Constrois outra função para que consigas fazer o output da grelha de jogo . Inicias a função main e fazes o processo para que o utilizador introduza o numero de coluna e de linha a introduzir o seu caracter de jogo.. uma dica: usa uma variavel char que armazene um caracter dos que são possiveis jogar, por exemplo a variavel ferramenta = 'X' na proxima jogada o programa vai ver se (ferramenta=='X') ? 'O' : 'X' ou seja se a ultima vez que a pessoa jogou for um X entao obrigatoriamente quando o outro utilizador introduzir onde quer jogar , vai ser jogado uma bola.. espero ter ajudado, um abraço
Neonglow Posted January 9, 2006 at 10:23 AM Author Report #11311 Posted January 9, 2006 at 10:23 AM #include <stdio.h> #include <conio.h> #include <string.h> #define NOME_FICH "c:\\Jogadores.rm" char Arrnumeros[99]; void Moldura(int x, int y, int larg, int alt, int estilo, char *tit) { int i; char cse, csd, cie, cid, l, a; switch(estilo) { case 2: cse = 'É'; csd = '»'; cie = 'È'; cid = '¼'; l = 'Í'; a = 'º'; break; case 3: cse = '*'; csd = '*'; cie = '*'; cid = '*'; l = '*'; a = '*'; break; case 4: cse = 's'; csd = 's'; cie = 's'; cid = 's'; l = 's'; a = 's'; break; default: cse = 'Ú'; csd = '¿'; cie = 'À'; cid = 'Ù'; l = 'Ä'; a = '³'; } gotoxy(x,y); printf("%c",cse); gotoxy(x+larg+1,y); printf("%c",csd); gotoxy(x,y+alt+1); printf("%c",cie); gotoxy(x+larg+1,y+alt+1); printf("%c",cid); for(i=1;i<=larg;i++) { gotoxy(x+i,y);printf("%c",l); gotoxy(x+i,y+alt+1); printf("%c",l); } for(i=1;i<=alt;i++) { gotoxy(x,y+i);printf("%c",a); gotoxy(x+larg+1,y+i); printf("%c",a); } //escreve t¡tulo gotoxy(x+larg/2-strlen(tit)/2,y);printf("%s",tit); } int menu() { int x, y,larg, alt, opc; for(; { clrscr(); x = 20; y = 7; larg = 38; alt = 9; Moldura(x, y, larg, alt, 2, " Menu "); gotoxy(x+2,y+2); printf("1- Insere/Altera Jogador"); gotoxy(x+2,y+3); printf("2- Ver Lista"); gotoxy(x+2,y+4); printf("3- Procurar por numero"); gotoxy(x+2,y+5); printf("4- About"); gotoxy(x+2,y+6); printf("5- Gravar"); gotoxy(x+2,y+7); printf("6- Sair"); gotoxy(x+2,y+9); printf("OpcÆo: "); scanf("%d",&opc); if (opc >= 1 && opc <= 6) return opc; } } void InsereJogador(void) { int num; char nome[15]; clrscr(); printf("N§ do Jogador: "); scanf("%d",&num); printf("Nome do jogador %d: ",num); scanf("%s",&nome); Arrnumeros[num-1] = nome; } void VerLista(void) { int i; clrscr(); for(i=0;i<99;i++) { if (Arrnumeros[i] == -1) printf("Jogador n§%d:\n",i+1); else printf("Jogador n§%d: %d\n",i+1,Arrnumeros[i]); } printf("Qualquer tecla para continuar..."); getch(); } void Procurarpornumero(void) { int num; clrscr(); printf("Numero: "); scanf("%d",&num); clrscr(); printf("O jogador n§%d ‚ o: %s",num, Arrnumeros[num-1]); printf("Caso nao tenha aparecido nenhum nome, o numero est livre para ser attribuido a outro jogador"); } void About(void) { clrscr(); printf("Programado por: F bio Silva"); getch(); } int LerDadosDoFicheiro() { int i; FILE *fp; fp = fopen(NOME_FICH,"r"); //abre o ficheiro para leitura "r" if (fp == NULL) { printf("Erro na abertura do ficheiro %s!\n\n",NOME_FICH); printf("Qualquer tecla para continuar..."); getch(); } for(i=0;i<99;i++) fscanf(fp,"%d",&Arrnumeros[i]); fclose(fp); } int GravarDadosParaFicheiro() { int i; FILE *fp; fp = fopen(NOME_FICH,"w"); //abre o ficheiro para escrita "w" for(i=0;i<99;i++) fprintf(fp,"%d\n",Arrnumeros[i]); fclose(fp); } void Init(void) { int i; for(i=0;i<99;i++) Arrnumeros[i] = -1; } void main(void) { int op, Alteracao=0, opc; Init(); LerDadosDoFicheiro(); for(; { clrscr(); op = menu(); switch(op) { case 1: //Insere/Altera nota InsereJogador(); Alteracao = 1; break; case 2: //Ver nota VerLista(); break; case 3: //M‚dia Procurarpornumero(); break; case 4: //N§ de positivas e negativas About(); break; case 5: //gravar GravarDadosParaFicheiro(); Alteracao = 0; break; case 6: //sair if (Alteracao == 1) { printf("Deseja gravar antes de sair? (s/n) "); opc = getch(); if ((opc == 's') || (opc == 'S')) GravarDadosParaFicheiro(); } return; } } } O programa permite inserir um nome (jogador) associado ao seu numero (numero da camisola) Depois cria a lista com 99 numeros e caso tenha sido atribuido os respectivos numeros tambem permite pesquisar directamente pelo numero o erro é na função inserejogador que está a dar erro penso que por causa da string. O erro é cannot convert "char*" to "char" plz help me é urgente....
Recommended Posts