Ir ao conteúdo
  • Cadastre-se

Ricardo Kaê

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

1
  1. Boa noite galera ! Então, estou aprendendo a programar em C agora e como prática, estou tentando fazer um triângulo de asteriscos com um número de linhas passado. /* Nº Linhas = 5 * ** *** **** ***** */ Exatamente desse jeito. Então, eu criei um vetor de caracteres de comprimento igual ao número de linhas - 1 (por causa do caracter de Escape) e estou tentando usar um for para imprimir a cada iteração, parte desse vetor. Em python, ficaria algo similar a isso (eu não sei se alguém programa em python, mas vai o código assim mesmo). Exemplo 1 em Python: vetorBase = "*****" // 5 caracteres de asteriscos for modificaVetor in range(1,6): print vetorBase[:modificaVetor] A minha dúvida é: Como eu imprimo um intervalo de um vetor em C? O código que eu fiz em C está assim... Exemplo 1 em C: // Triângulo de asteriscos #include <stdio.h> int main(void) { char vetorBase[6] = "*****"; int modificaVetor; for (modificaVetor=1;modificaVetor<5;modificaVetor++) { printf("%.%ds",modificaVetor,vetorBase); // Eu estava tentando modificar a precisão do vetorBase, com o valor de modificaVetor. Não deu certo, rs } return 0; } Eu pensei numa solução 2 também, que seria ao invés de ficar tentando imprimir direto, guardasse numa variável, parte desse vetor. Desse jeito... Exemplo 2 em Python: vetorBase = "*****" for modificaVetor in range(1,6): vetorResp = vetorBase[:modificaVetor] print vetorResp Em python é até burrice fazer isso, mas acho que é possível aproveitar o algoritmo em C, já que eu não consigo usar o printf direito em C. Enfim, essa é a duvida. Agradeço aos que puderem ajudar !

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...