Jump to content
Fórum Script Brasil

Chaves

Membros
  • Posts

    10
  • Joined

  • Last visited

About Chaves

Chaves's Achievements

0

Reputation

  1. tenta coloca assimvoid pergunta1(void) nas duas funçoes!
  2. Chaves

    Pointer, Array C!

    sakei vlw graymin, foi de grande ajuda esse tópico :D!!
  3. Bom galera meu professor de programaçao da facul finalmente deu um projeto para nos fazer-mos!! Bom basicamente eu tenho que fazer um programa para desenhar em shell não grafico!! o codigo do programa é #include <stdlib.h> #include <stdio.h>/*biblioteca do system("pause") se for salvar em .cpp, essa biblioteca é dispensavel quando salva em c usando o dev-C++*/ #define max 50 //////////TODAS AS FUNCOES ESTAO DESCRITAS A BAIXO DA FUNÇÃO MAIN()!//////// void Messagem_erro(void); ////////// void Mudar_Posicao(int *b_ptr,int *q_ptr, int tales, char *posicao_ptr); ///////////// void Tartaruga(char *A ,char posicao); /////////// void Virar_Tartaruga(char *posicao_ptr , char); /////////// main(){ char jim = 'h';//variavel para não ir pro menu depois de mostrar o array! int tales;//casas para a tartaruga andar char posicao = '^';/*posicao da tartaruga, as posicoes possiveis são ^(olhando pra cima) >(olahndo para direita) V(olhando para baixo <(olhando para esquerda)*/ int k; int x; //eixo x(que vale como se fosse o y de uma funçao) int y; //eixo y(que vale como se fosse o x de uma funçao) int que = 0;//posiçao da tartaruga int b = 0;//posiçao da tartaruga char Table[max][max]; do{//loop para gerar menu, ateh o usuario digitar 0 para sair printf("\n\n\n#################MENU####################\n"); printf("#\t"); printf("1-Caneta p/ cima\t\t"); printf("#\n"); printf("#\t"); printf("2-Caneta para baixo \t\t"); printf("#\n"); printf("#\t"); printf("3-Vire 90graus para direita\t"); printf("#\n"); printf("#\t"); printf("4-Vire 90graus para esquerda\t"); printf("#\n"); printf("#\t"); printf("5-Entre com espacos para andar\t"); printf("#\n"); printf("#\t"); printf("6-Imprima o array\t\t"); printf("#\n"); printf("#\t"); printf("0-Terminar o programa\t\t#\n"); printf("#################MENU####################\n\n"); scanf("%d", & k); printf("\n"); switch (k){ case 1://parar de pintar break; case 2://pintar break; case 3://Virar a tartaruga para direita if (posicao == '^') Virar_Tartaruga(&posicao, '>'); else if (posicao == '>') Virar_Tartaruga(&posicao,'V'); else if (posicao == 'V') Virar_Tartaruga(&posicao,'<'); else if (posicao == '<') Virar_Tartaruga(&posicao,'^'); break; case 4://virar a tartaruga para esquerda if (posicao == '^') Virar_Tartaruga(&posicao,'<'); else if (posicao == '<') Virar_Tartaruga(&posicao,'v'); else if (posicao == 'V') Virar_Tartaruga(&posicao,'>'); else if (posicao == '>') Virar_Tartaruga(&posicao,'^'); break; case 5://andar com a tartaruga printf("Quantos espacos voce deseja andar?\n"); scanf("%d", & tales); Mudar_Posicao(&b,&que ,(tales-1),&posicao); break; case 6://Imprime array for(x=0;x < max; x++){ for(y=0;y < max; y++){ if (y == (max - 1)){ Table[x][y] = '0'; Tartaruga(&Table[que][b], posicao); printf("%c" , Table[x][y]); printf("\n"); } else { Table[x][y] = '0'; Tartaruga(&Table[que][b], posicao); printf("%c" , Table[x][y]); } } } while(jim != 'n'){ printf("\nDigite a letra \"n\" para continuar! \n"); jim = getchar(); } break; case 0://Sair do programa, porem antes imprime uma menssagem printf("Obrigado por usufruir deste lindo gerador de imagens para shell não grafico!\n"); break; default://Imprime menssagem se o usuario não entrar com um valor valido printf("Voce não escolheu uma opcao valida\n"); break; } }while(k != 0); system("Pause"); return 0; } ///////////////////////////////////////////////////////////////////// void Mudar_Posicao(int *b_ptr,int *q_ptr, int tales, char *posicao_ptr){//Funcao para andar com a tartaruga if(*posicao_ptr == '^' && *q_ptr == 0 ){ Messagem_erro(); } if(*posicao_ptr == '^' && *q_ptr != 0 ){ *q_ptr = tales; } if(*posicao_ptr == '<' && *b_ptr == 0 ){ Messagem_erro(); } if(*posicao_ptr == '<' && *b_ptr != 0 ){ *b_ptr = tales; } if(*posicao_ptr == '>' && *b_ptr == 49 ){ Messagem_erro(); } if(*posicao_ptr == '>' && *b_ptr != 49 ){ *b_ptr = tales; } if(*posicao_ptr == 'V' && *q_ptr == 49 ){ Messagem_erro(); } if(*posicao_ptr == 'V' && *q_ptr != 49 ){ *q_ptr = tales; } } /////////////////////////////////////////////////////////////////////////////// void Tartaruga(char *A ,char posicao){ //Funçao que altera a posiçao x,y da tartaruga *A = posicao; } /////////////////////////////////////////////////////////////////////////////////// void Virar_Tartaruga(char *posicao_ptr ,char posicao){//Função para virar a tartaruga *posicao_ptr = &posicao; *posicao_ptr = posicao; } //////////////////////////////////////////////////////////////////////////////// void Messagem_erro(void){//Função que retorna uma menssagem de erro printf("#################ERROR#############################################\n"); printf("# ");printf("não foi possivel efetuar a acao, pois não há espaco para andar. ");printf("# \n"); printf("###################################################################\n\n\n"); } ////////////////////////////////////////////////////////////////////////////////// Esta quase tdo pronto mais eu não consigo dejeito nenhum fazer a tartaruga pintar, quando o lapis esta para baixo...estou sem ideias!!! alguém poderia me dar uma idea de como começar a fazer isso??? E criticas no programa também ajudariam!! Tambem estou com um problema nessa linha para não ir direto para o menu depois que mostra o array em modo grafico! while(jim != 'n'){ printf("\nDigite a letra \"n\" para continuar! \n"); jim = getchar(); } Ele imprime printf("\nDigite a letra \"n\" para continuar! \n"); 2 vezes!! Obrigado desde já!!
  4. Chaves

    Pointer, Array C!

    Bom galera, faço facu de ciencia da computaçao e estava na minha aula favorita(adivinha qual??), quando meu professor falou uma coisa que fiquei abismado... Ele falou em alto e bom tom, para qualquer um ouvir que Array era nada mais nada menos que um ponteiro... Bom se um array é um ponteiro poderia eu usar ele para mudar dados de uma variavel direto da memoria igual faço no ponteiro?? Ou poderia eu transfomar um ponteiro em array?? Eu não sei se voces entederam oque eu quero dizer...se não entederam eu poderei formular melhor minha pergunta com exemplos de codigos bla bla bla!! Tipo na memoria o array é alocado do mesmo jeito que um pointer???
  5. Se eu não me engano a main nunca recebe inputs int main(int argc, char *argv[]).. alem disso ela não esta retornando nada...a main so não retorna nada quando voce faiz void main()... Estou compilando com o dev...ele não acha a funçao push também!! Verifica se a biblioteca esta certa!!! Bom sou leigo no assunto ainda, então se falei merda desculpe! Bom pelos meu sconhecimentos também nunca é bom pular o [0] em uma array, voce esta gastando uma locaçao na memoria a toa!! Uma coisa legal também seria voce colocar algo para parar o loop, tipo se o cara entrar com zero o loop para e ele não precisa entrar o resto!!!
  6. Chaves

    Ajuda Para Iniciante...

    Ola ivan, scanf ("%f",a); scanf ("%f",B); scanf ("%f",c); voce tem que assinar o falor do float para a variavel no scanf com um & o certo seria: scanf("%f",& a); scanf("%f",& B); scanf("%f", & c); tambem tem uma coisa estranha...pra que serve esse getchar() ai no final??? e porque a função main não esta retornando nada...tente fazer a funçao main retornar 0, com o comando return 0;!!
  7. Chaves

    Getchar E Goto...

    Ok vlw...voces me ajudaram muito :D!! por isso amo esse forum!!!
  8. Acho dificil alguém fazer tdo isso pra voce, depende oque voce quer também e tals... Cara o melhor e voce pegar uma apostila de php e aprender, não é muito dificil se voce souber html e um pouco de logica de programaçao! não me lembro direto mais acho que o site oficial de php é http://www.php.net/ la tem apostilas completas sobre php, porem é em ingles...ou voce le as apostilas da scriptbrasil que são muito boms também!
  9. faça em php pois sera mais facil manipular a data base.... Php em open source então voce encontra mtas apostilas ai na net...
  10. Chaves

    Getchar E Goto...

    Bom estou com uma duvida, tem como pegar mais de uma letra com o getchar() para armazenar em uma so variavel, tentei de tdo mais não consigo =(! E tem como usar goto com standard c?? eu consigo usar no c++ porem o goto não funciona em c para mim. gracias, El chavo!
×
×
  • Create New...