Ir para conteúdo
Fórum Script Brasil
  • 0

Script


Fer_Juriolli

Pergunta

Olá pessoal.

Faz um tempinho que me interessei em programação. Especialmente por C++.

já criei alguns scripts, bem iniciantes.

Não tive aula nem nada do gênero. Aprendi lendo tutoriais etc.

Abaixo, um exemplo de script para tirar minha dúvida:

#include <iostream>

using namespace std;

int main()

{

int p;

int pr;

cout << "Digite o tamanho do HD do seu computador: ";

cin >> p;

if (p>250)

cout << "Mentira! Digite o tamanho verdadeiro: ";

cin >> pr;

if (pr<250)

cout << "Agora sim, seu mentiroso!" << endl;

system("PAUSE");

getchar();

}

É um script bem sonso, é só pra tirar minha dúvida mesmo rsrs.

Queria saber como eu poderia fazer para quando eu digitar o valor do HD errado, ele ficar repetindo a mensagem, até que eu colocar o valor verdadeiro de acordo com a condição do script.

E também, quando eu coloco um valor inferior a 250 no começo, não acontece nada. Até que eu coloque o valor correto na segunda condição do if para o script prosseguir corretamente.

Se tiver alguma coisa que eu fiz de errado, pode me falar também.

Valeu.

Abraços

Fernando Juriolli.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Para fazer com que o script permaneça perguntando o valor, basta usar um while. No caso, usaremos o do-while, que executará a pergunta ao menos 1x e permanecerá executando até ser encontrado um valor satisfatório (p < 250).

Quanto ao erro no seu script (não ocorre abaixo) é simples: ele entrará sempre no cin >> pr, e mostrará a mensagem caso o if seja verdadeiro, caso contrário ele vai ao pause sem usar o pr para nada.

Há o uso desnecessário de memória também, criando 2 objetos que poderiam ser resumidos em apenas 1. O p é usado para ler o input e depois você usa o pr com a mesma função, quando poderia reusar o p. Veja:

#include <iostream>
using namespace std;

int main()
{
    int p = 0; 
    cout << "Digite o tamanho do HD do seu computador: ";
    do
    {    
        cin >> p;
        if (p>250)
            cout << "Mentira! Digite o tamanho verdadeiro: ";
    }while (p>250);
    cout << "Agora sim, seu mentiroso!" << endl;
    system("PAUSE");
    getchar();
}

Link para o comentário
Compartilhar em outros sites

  • 0
Para fazer com que o script permaneça perguntando o valor, basta usar um while. No caso, usaremos o do-while, que executará a pergunta ao menos 1x e permanecerá executando até ser encontrado um valor satisfatório (p < 250).

Quanto ao erro no seu script (não ocorre abaixo) é simples: ele entrará sempre no cin >> pr, e mostrará a mensagem caso o if seja verdadeiro, caso contrário ele vai ao pause sem usar o pr para nada.

Há o uso desnecessário de memória também, criando 2 objetos que poderiam ser resumidos em apenas 1. O p é usado para ler o input e depois você usa o pr com a mesma função, quando poderia reusar o p. Veja:

#include <iostream>
using namespace std;

int main()
{
    int p = 0; 
    cout << "Digite o tamanho do HD do seu computador: ";
    do
    {    
        cin >> p;
        if (p>250)
            cout << "Mentira! Digite o tamanho verdadeiro: ";
    }while (p>250);
    cout << "Agora sim, seu mentiroso!" << endl;
    system("PAUSE");
    getchar();
}

Entendi cara.

Valeu mesmo, tirou minha dúvida.

Abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...