Jhessica 0 Denunciar post Postado Maio 8, 2007 Há três semanas, meu professor de Linguagem de Prgramação (Pascal) pediu um programa que inverta as palavras de uma frase, ou seja, caso o usuário entre com um nome, JOSE PAULO, por exemplo, o programa retorne ESOJ OLUAP.Até agrora, nenhum dos alunos conseguiu resolver o exercício. :mellow: O exercício deve ser entregue dia 11/05. Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Maio 8, 2007 voce tentou fazer? a idéia é simples, voce precisa saber o tamanho do vetor de entrada, ou seja, o nome que a pessoa digitou. ai voce usa um looping variando de tamanho do vetor até zero. voce pode usar dois vetores: - o vetor que realizará a leitura. - e o que receberá a inversão. para controlar os índices dos vetores voce precisa de duas variáveis: - variável do looping que le o vetor lido de tras para frente - variável que insira no novo vetor a inversão, essa varia de 0 até tamanho do vetor em C fica + ou - assim: x = 0;for (y = tamanho; y >= 0; y--){ invertido[x] = entrada[y]; x++;}invertido[x] = '\'; Compartilhar este post Link para o post Compartilhar em outros sites
Jhessica 0 Denunciar post Postado Maio 8, 2007 Sim, eu tentei várias vezes, consegui fazer um que inverte, mas não ficou da forma como o professor pediu. Ele quer que o programa inverta nome por nome, mas que estes continuem na mesma posição. O que eu fiz ficou assim: se o usuário digitar, MARIA LUCIA, por exemplo, o programa retorna AICUL AIRAM... A estrutura em Pascal: program nome_inverso;uses crt;vars:string;tam, i: integer;beginclrscr;write ('digite uma frase');read (s);tam:=length(s);for i:= tam downto 1 dowrite (s[i]);readkey;end. Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Maio 8, 2007 entendi então voce precisa fazer assim: - crie um loop que irá percorrer o vetor lido de 0 a tamanho do vetor. dentro desse vetor voce deve percorrer o vetor de entrada até encontrar duas situacões: ou espaco em branco ou fim de string, com isso voce seleciona a palavra dentro da string. - agora voce entra no caso anterior de inverter a palavra e para isso voce precisa de um outro loop. a lógica é essa tenta ai e qualquer coisa estamos aqui. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
bianca doria 0 Denunciar post Postado Abril 1, 2010 tentei tdas esses jeitos e nenhum deu certo e agora ? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Abril 1, 2010 use um vetor auxiliar para armazenar palavra por palavra, e depois vá escrevendo na tela, vou te passar a lógica faz um loop até achar um espaço em branco ai você vai jogar MARIA no vetor auxiliar, qnd você achar um espaço em branco imprime oq está no vetor auxiliar e depois limpa ele para receber a nova palavra, enquanto naum for fim da string. entendeu? Compartilhar este post Link para o post Compartilhar em outros sites