Jump to content

[Resolvido] Duvida de C++


FMC
 Share

Recommended Posts

Olá Comunidade P@P, Tenho aqui uma dúvida sobre C++!

Eu na escola ando a aprender Pascal, e a pouco tempo eu aprendi a usar o goto(x,y) que para quem não sabe serve para começa a escrever ou a ler numa determinada posição no programa.

Mas a minha dúvida é: Se é possível, fazer o mesmo em C++, e se ter como fazer?

Sei que a dúvida pode ser um bocado estúpida, mas já a algum tempo que programo C++ e nunca usei e nem pensem em usar, e já pesquisei na Internet e em alguns livros e nada!

Obrigado pela vossa paciência!

Abraços,

FMC!

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Link to comment
Share on other sites

HappyHippyHippo

primeiro de tudo, o statement goto não tem dois parâmetros (x e y). o que tem é um label que deverás colocar no meio do código.

como disseste bem, não pensas em usar, então não uses.

fica só a referência, que sim, o goto existe em c/c++ e (pelo incrível que pareça) o seu uso é exactamente igual ao do pascal

IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

Olá HappyHippyHippo!

Antes de mais eu tanto em Pascal tanto em c++, ainda não programa em OO(Orientação de Objectos)!

E sim em pascal o goto tem dois Parâmetros um das colunas e um das linhas!

Fica aqui um trecho de um procedimento de um menu que usa o actual código.

procedure esc_reg_voos (var l:voo);

var linha:integer;

Begin

textcolor(15);

gotoxy(30,2); write(' [Menu voos]');

gotoxy(10,4); write('Numero de voo: ',l.num_voo);

gotoxy(40,4); write('Nome do avião: ',l.nome_aviao);

gotoxy(10,5); for linha:=1 to 66 do write('-');

gotoxy(10,7); write('Destino: ',l.destino);

gotoxy(10,8); for linha:=1 to 61 do write('-');

gotoxy(10,10); write('Data de saida do avião ');

gotoxy(10,12); write('Dia: ',l.data_de_saida.dia);

gotoxy(20,12); write('Mes: ',l.data_de_saida.mes);

gotoxy(30,12); write('Ano: ',l.data_de_saida.ano);

gotoxy(40,12); write('Hora: ',l.data_de_saida.horas);

gotoxy(50,12); write('Minutos: ',l.data_de_saida.minutos);

gotoxy(10,13); for linha:=1 to 52 do write('-');

gotoxy(10,15); write('Estimativa de voo: ',l.estimativa_voo);

gotoxy(40,15); write('Numero de lugares: ',l.num_lugares);

gotoxy(10,16); for linha:=1 to 55 do write('-');

gotoxy(10,18); write('Preço do Bilhete: ',l.preco_bilhetes);

gotoxy(10,19); for linha:=1 to 26 do write('-');

textcolor(2);

gotoxy(10,22); writeln('Carrega numa tecla para passar para o proximo');

readkey;

end;

E funciona perfeitamente!

O mesmo processo que utilizo em pascal não funciona!

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Link to comment
Share on other sites

Ya esquece esqueci me de colocar o xy, erro meu!

Mas em c++ me dá o seguinte erro:

error: 'gotoxy' was not declared in this scope

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Link to comment
Share on other sites

Pois, mas infelizmente eu não programo c++ no Windows mas sim no Qt Creator 3.5.0, no Ubuntu 15.10, e quando eu acesso no link me dá o seguinte erro:

We're sorry, the page you requested cannot be found.
Edited by FMC

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Link to comment
Share on other sites

Obrigado HappyHippyHippo!

Funcionou perfeitamente e me tirou a minha duvida!

"The greatest mistake you can make in this life is to be continually fearing you will make one."

Elbert Hubbard -

 

Link to comment
Share on other sites

O goto existe também no C++, mas é algo arcaico. Eu nunca trabalhei directamente com o Pascal, mas tenho uma ideia que o goto não é exactamente igual.

Se planeias saltar dum lado para o outro no programa ('jump' é o termo, 'jmp' em <i>assembly</i>), então usa sempre funções. Se queres "saltar" dentro da função, podes criar um objecto estruturado dentro da função, como também podes usar funções "lambda" (adicionadas no C++11).

Link to comment
Share on other sites

HappyHippyHippo

O goto existe também no C++, mas é algo arcaico. Eu nunca trabalhei directamente com o Pascal, mas tenho uma ideia que o goto não é exactamente igual.

Se planeias saltar dum lado para o outro no programa ('jump' é o termo, 'jmp' em <i>assembly</i>), então usa sempre funções. Se queres "saltar" dentro da função, podes criar um objecto estruturado dentro da função, como também podes usar funções "lambda" (adicionadas no C++11).

leste o tópico inteiro ?

a questão era sobre a função gotoxy e não goto como descrito na primeira entrada

IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.