Ir para conteúdo
Fórum Script Brasil
  • 0

Imprimir na tela estilo caixa de cerveja


Fabin

Pergunta

Galera estou afzendo um programa em c que preciso imprimir na tela igual abaixo:

v v v v

v v v v

v v v v

v v v v

v v v v

v v v v

estilo uma caixa de cerveja... como faço isso? já fiz o for e tals

porem imprime um do lado do outro vvvvvvvvvvvvvvv queria que imprimisse do jeito acima entenderam

obrigado

obrigado

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

não adianta brotehr... pois vai sair um embaixo do outro entendeu...

sei que no dos suporta 80 caracteres por linha deve haver uma funçao ou algo para que faça imprimir do jeito que coloquei ali... vou ficar aqui no aguardo por uma resposat mas valeu pela ajuda brother

alguém ai tem mais dicas?

Link para o comentário
Compartilhar em outros sites

  • 0
Faça o teste, funciona sim.

jonantahn não funciona testei aqui olha meu codigo

int linha=4, coluna=6, l, c;
    char caixacerveja[linha][coluna];
    for(l=0;l<linha;l++)
       for(c=0;c<coluna;c++){
           caixacerveja[linha][coluna]='v';
           printf("%c",caixacerveja[linha][coluna]);}

se eu colocar quebra de linha antes do %c ele vai imprimir espaçao em branco e depois um v debaixo do outro tendeu não vai imprimir no estilo que quero...

entedenu agora

sabe como devo fazer?

valews

t+

Link para o comentário
Compartilhar em outros sites

  • 0
conseguiram aew galera??

valews

t+

Evite a postagem de up's conforme a regra 3.8.

3.8 Não é permitida a postagem de mensagens com a finalidade de manter o tópico no início da lista (up), nem de mensagens que não se refiram ao assunto do tópico (flood). Caso isso ocorra, as mensagens serão excluídas e os autores, advertidos.

No código que você postou não há quebra de linha. Insira uma quebra de linha a cada iteração do loop principal (que é o das linhas).

Link para o comentário
Compartilhar em outros sites

  • 0

desculpa aew brother...

mas como faria? no for das linhas colocava um printf("\n");??

seria isso?

valews

t+

conseguir fazer aqui

coloquei assim

int linha=6, coluna=4, l, c;
    char caixacerveja[linha][coluna];
    for(l=0;l<linha;l++){
        printf("\n");                                
       for(c=0;c<coluna;c++){
           caixacerveja[linha][coluna]='v';
           printf("%c\t",caixacerveja[linha][coluna]);
           }
    }

ai deu certo aqui

valews ai pessoal que me ajudaram

agora vou terminar aqui qualquer duvida posto aqui

vou diexar etse tópico aberto para caso tiver mais duvidas ok

valews

t+

Link para o comentário
Compartilhar em outros sites

  • 0

galera agora estou com duvida para fazer o programa que é o seguinte

Faça um programa que preencha uma caixa de cerveja

com o caractere ‘v’ (significa posição vazia).

• Depois o programa deve perguntar ao usuário qual a

marca de cerveja que ele quer colocar em cada posição

de forma seqüencial.

• Quando o usuário fechar a conta ou encher toda a caixa,

o programa deverá imprimir quantas garrafas de cada

marca existem na caixa.

• As marcas são representadas por ‘A’ntartica, ‘B’rahma,

‘N’ova Schin, ‘K’aiser, ‘L’ocal e ‘F’echar a conta.

ai ele esta assim ate o momento

int main(){
    int linha=6, coluna=4, l, c;
    char caixacerveja[6][4],opcao,opcao_cerveja;
    printf("Sua Caixa de cerveja Atual (v = Vazio)\n");
    for(l=0;l<linha;l++){
        printf("\n");                                
       for(c=0;c<coluna;c++){
           caixacerveja[linha][coluna]='v';
           printf("%c\t",caixacerveja[linha][coluna]);
           }
    }
    printf("\n\n\n");
                
         for(l=0;l<linha;l++){                                                                 
            for(c=0;c<coluna;c++){                 
                    printf("Digite a marca de cerveja que deseja colocar na caixa.\n"
                            "(a)ntartica, (b)rahma, (n)ova skin, (k)aiser, (l)ocal, (f)echar conta.\n");
                    scanf("%c,%*c",&caixacerveja[linha][coluna]);
             }
         }                                                                                     
    system("pause");
    return(0);
}

esta faltando mta coisa porem estou testando primeiro se o programa esta lendo os 24 caracteres e é isso o meu problema ele não esta, quando começo a digitar lee le somente 13 porque?

o que esta errado no meu codigo??

e ele esta imprimindo o digite a marca.. duas vezes por que? como faço para consertar isso?

valews

Editado por Fabin
Link para o comentário
Compartilhar em outros sites

  • 0

galera conseguir resolver este problema limpando o buffer com a funçao fflush(stdin)

for(l=0;l<linha;l++){                                                                 
            for(c=0;c<coluna;c++){                 
                    printf("Digite a marca de cerveja que deseja colocar na linha %d da %d coluna da Caixa de Cerveja.\n"
                                   "(a)ntartica, (b)rahma, (n)ova skin, (k)aiser, (l)ocal, (f)echar conta.\n",c,l);
                    fflush(stdin);
                    scanf("%c,%*c",&caixacerveja[linha][coluna]);
             }
         }
agora minha duvida é o seguinte as restriçoes que devo colocar... é o seguinte agora é que deve aceitar somente as letras a,b,n,k,l,f se eu colocar um do-while ocorre algum erro vou colocar assim
for(l=0;l<linha;l++){                                                                 
            for(c=0;c<coluna;c++){                 
                do{    
printf("Digite a marca de cerveja que deseja colocar na linha %d da %d coluna da Caixa de Cerveja.\n"
                                   "(a)ntartica, (b)rahma, (n)ova skin, (k)aiser, (l)ocal, (f)echar conta.\n",c,l);
                    fflush(stdin);
                    scanf("%c,%*c",&caixacerveja[linha][coluna]);
             }while((caixacerveja != 'f')||(caixacerveja == 'a')....)
}
         }

estou na duvida por causa do for pois quando ele digiitar algo diferente daquelas letras não vai contabilizar isso que eu quero e se ele digitar f teria que sair da conta sem fazer o preenchimento das outras partes da caixa que vai fica com o v de vazio...

entenderam onde quero chegar??

valews

obrigado

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...