Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jhessica

Algoritmo em pascal

Recommended Posts

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

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

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

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

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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.