Ir ao conteúdo
  • Cadastre-se

C formar colunas para tabuada


Posts recomendados

Olá!

 

Uma das atividades que meu professor passou para minha turma é fazer com que o dev c mostrasse a tabuada automaticamente em um programa. Essa parte do calculo automatico está ok, mas queria deixar a apresentação da tabuada mais organizada, fazendo o programa criar colunas (colocar parte da tabuada lado a lado, não apenas em baixo.

 

Mas não estou conseguindo fazer isso, o programa não está formando as colunas, deixando tudo em uma única. Não consigo encontrar o que está causando o erro, poderiam me ajudar?

#include<windows.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>



void gotoxy(int x, int y){
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),(COORD){x-1,y-1});}
int main ()
{ 
    int num=-1, dec, x=0, y=0, con1, con2, cony, conx=0; //Variaveis
  

    printf ("Tabuada");


for (cony=0; cony<10; cony++)
{
    if (conx<=3)
    {
        y=y+20;
    }

for (conx=0; conx<3; conx++)
{
    if (num<10)    
    {
        gotoxy(x, y);
        num++;
        printf ("\n");
        dec=-1;


        for (con2=0; con2<=10; con2++)
        {
        dec++;
        printf ("\n%d x %d = %d", num, dec, (num*dec));
        x=x+15;
        }
    }
}
}
printf ("\n\n");
system ("pause");
}

 

pra tentar entender o que esta acontecendo de errado fiz um outro programa mais simples, mas tb não deu certo. Nesse ele forma as colunas, mas o começo e o fim de cada uma delas não esta como deveria (a primeira linha fica com as colunas juntas, sem o espaçamento que coloquei pra x, nas outras começa a imprimir a informação depois do primeiro espaçamento e no final fica com 2 "+" juntos)... resumo, so me confundi mais :v

#include<windows.h>
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>

void gotoxy(int x, int y){
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),(COORD){x-1,y-1});}
int main ()
{
    int x=0, y, cony, conx; //variaveis
    
for (cony=0; cony<5; cony++)
{
    if (x==0)
    {y=0;}
    else
    {y=y+3;}
    x=0;
for (conx=0; conx<=3; conx++)
{
    gotoxy(x, y);
    
    printf ("+");
    x=x+10;
}
}system ("pause");

}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Escreva sem a SetConsoleCursorPosition.

Sugestão é

 

Linha:    segunda parcela   (de 1 até 10) 

Coluna: primeira  parcela   (de 1 até   3)

 

Imagem Ilustrativa Sujeita a Exclusão

image.png.a16fa4efa40e9db67d9053ff1a0bed8f.png

Ou seja, após impressão de uma linha com todas as tabuadas (de 1 até 3) vem a próxima linha conseguinte (j + 1).

 

@Ricardo Alex Kopp Jacob entende isso ???

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...