Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

1. Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

Ramon Ferreira
ramonenghaw

(usa Ubuntu)

Enviado em 08/04/2015 - 11:14h

Amigos, tenho que fazer esse exercício, mas como to começando agora em programação, estou bem perdido em como começar, eu sei que isso é matriz, sei até como criar a matriz e tal, mas não passa pela minha cabeça como organizar ela em diagonal, muito menos como organizar para que o usuário tenha a opção de escolher em qual orientação ele quer que a palavra seja impressa.

Crie um programa em C que obtenha uma palavra via teclado e a escreva no vídeo em diagonal. O programa também receberá do usuário uma indicação de orientação, para definir qual diagonal usar, como segue:

a. Indicação = 0
C
____A
________S
____________A


b. Indicação = 1

_____________A
_________S
_____A
C

Coloquei essas linhas para que as palavras ficassem em diagonal aqui na postagem.

Desde já agradeço!




  


2. Re: Totalmente perdido nesse exercício. [matriz]

Raphael Oliveira
rapharocket

(usa Solus)

Enviado em 08/04/2015 - 11:37h

Vou ser sincero com você, eu sei como resolver, mas acabei de fazer uma prova de linguagem C e estou cheio de preguiça, mas o exercício não é difícil. Uma dica é você trabalhar com o "passo" do laço for a fim de construir/detectar uma diagonal.

Também penso que, em se tratando de um exercício que seu professor passou, não seria nem um pouco legal eu colocar o código prontinho aqui para você.

Pense da seguinte forma:

1. Como montar uma diagonal utilizando dois laços for aninhados;
2. Crie duas funções, uma para a diagonal principal e outra para a diagonal secundária;
3. Chame essas funções dentro de um if - else, dependendo do que o usuário escolher.

São passos práticos para resolver o problema.

Dá para fazer manipulando os parâmetros dos printf também, mas aí é com você...


3. Re: Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

Ramon Ferreira
ramonenghaw

(usa Ubuntu)

Enviado em 08/04/2015 - 11:49h

Então, eu tava precisando de um norte pra seguir, com as dicas que vc me deu acho que da pra começara raciocinar melhor sobre o código.

Valeu!


4. Re: Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

Leonardo J. Oliveira
leojuoli

(usa Debian)

Enviado em 08/04/2015 - 14:14h

Amigo, pra escrever na diagonal simples é bem simples, a primeira diagonal segue um padrão (1,1) (2,2) (3,3), etc.. Basta fazer um laço dentro do outro e comparar linha com coluna, quando for igual você imprime uma letra, quando não, um espaço. Pra escrever na outra diagonal é um pouco diferente, primeiro crie uma função que inverta a palavra e para imprimir é simples, basta fazer um condicional que compare se a soma do numero da coluna e numero da linha é igual ao numero de caracteres da palavra.

Espero ter sido claro, caso não tenha sido me envie um e-mail: [email protected] Posso te explicar.


5. Re: Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

Ramon Ferreira
ramonenghaw

(usa Ubuntu)

Enviado em 08/04/2015 - 14:29h

Muito obrigado Leojuoli, pude notar que o pessoal aqui é super prestativo, te mandei um e-mail mostrando uma parte do código que fiz e onde está minha duvida no momento.



6. Re: Totalmente perdido nesse exercício. [matriz] [RESOLVIDO]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 08/04/2015 - 18:14h

Onde você viu matriz nesse exercício? Tudo o que você tem de fazer é imprimir uma quantidade um caráter por linha, com uma quantidade crescente (ou decrescente) de espaços antes do caráter que vai em cada linha.