Jump to content
luis_liv

c++, duvida funcoes menus

Recommended Posts

luis_liv

Elabora um programa em C++, com o nome ProjectoFinal.cpp, com o seguinte menu principal. O utilizador deverá escolher uma das quatro opções. Ao clicar na opção 4, deve terminar o programa. De seguida, seguem as instruções para as opções 1, 2 e 3.

**** MENU PRINCIPAL ****

1 – Operacoes Matematicas

2 – Operacoes com Arrays e Strings

3 – Jogos

4 – Sair

Introduza a sua opcao 

Ao clicares na opção 1, irá aparecer o seguinte menu secundário, com diversas operações matemáticas. Ao escolheres a tua nova opção (1 a 4), deves pedir dois números ao utilizador, utilizando uma função chamada pedirNumeros. Depois, deves passar esses números para a função respectiva (soma, subtracao, multiplicacao e divisão) e mostrar o resultado. Em relação à opção 5, deves recorrer ao enunciado do projecto 1. Ao clicares, na opção 6, voltas ao menu principal.

**** OPERACOES MATEMATICAS ****

1 – Soma

2 – Subtraccao

3 – Multiplicacao

4 – Divisao

5 – Formula Resolvente

6 – Voltar ao Menu Principal

Introduza a sua opcao 

Ao clicares na opção 2, irá aparecer o seguinte menu secundário, com diversas operações sobre arrays e strings. Ao escolheres a opção 1, preenche uma matriz de 5 linhas por 5 colunas com valores sorteados maiores ou iguais a 10 e menores ou iguais a 20. Após o preenchimento devem ser escritos todos os valores existentes na matriz, de seguida devem ser escritos apenas os valores situados nas diagonais da matriz. Em relação às operações com as strings (2 a 5), deves pedi-la(s) ao utilizador. Ao clicares, na opção 6, voltas ao menu principal.

**** OPERACOES COM ARRAYS E STRINGS ****

1 – Preencher Matriz 5x5

2 – Copiar Strings

3 – Acrescentar Strings

4 – Comparar Strings

5 – Medir o Tamanho da String

6 – Voltar ao Menu Principal

Introduza a sua opcao 

Ao clicares na opção 3, irá aparecer o seguinte menu secundário, com o jogo Adivinha o Número. Em relação à opção 1, deves recorrer ao enunciado do projecto 2. Ao clicares, na opção 2, voltas ao menu principal.

**** JOGOS ****

1 – Jogo Adivinha o Numero

2 – Voltar ao Menu Principal

Introduza a sua opcao 

Alguem me pode ajudar pff

e urgente

agradecia

com os melhores cumprimentos

Luis

Share this post


Link to post
Share on other sites
HecKel

Ajudar? Sim. Fazer o trabalho? Não.

Não vejo aí dúvidas colocadas, só um enunciado.

Já agora, altera o titulo do tópico para algo mais esclarecedor, sff.

Share this post


Link to post
Share on other sites
luis_liv

mandei o enunciado para verem como e que e o exercicio

a duvida e logo nos menus onde ta as somas e isso em que o professor pede uma funcao

nao sei onde se coloca essa funcao

Share this post


Link to post
Share on other sites
brunoais

nao sei onde se coloca essa funcao

A função coloca-se no código.

(É tudo o que posso responder perante uma pergunta dessas.)


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
luis_liv

#include <iostream>
#include<conio.h>
using namespace std;

void  pedirNumeros(int num, int num1)
		{
			cout<<"introduza um numero-->";
			cin>>num;
			cout<<"introduza mais um numero-->";
			cin>>num1;
		}

void main()
{

char tecla;

do
{
system("cls");
cout<<"****Menu Principal****\n";
cout<<"1 - Operacoes Matematicas\n";
cout<<"2 - Operacoes com Arrays e Strings\n";
cout<<"3 - Jogos\n";
cout<<"4 - Sair\n";
cout<<"Introduza a sua opcao-->";
cin>>tecla;

switch(tecla)
{
	case '1':
	{
		cout<<"Operacoes Matematicas";_getche();
	do
	{
	system("cls");
	cout<<"****Operacoes Matematicas****\n";
	cout<<"1 - Soma\n";
	cout<<"2 - Subtraccao\n";
	cout<<"3 - Multiplicacao\n";
	cout<<"4 - Divisao\n";
	cout<<"5 - Formula Resolvente\n";
	cout<<"6 - Voltar ao Menu Principal";
	cout<<"Introduza a sua opcao";

case '1':
	{
		pedirNumeros(num, num1);
		int soma(int soma2=0)
		{
			soma2=num+num1;
			cout<<soma2;
		}
	}
	break;

case '2':
	{
		pedirNumeros(num, num1);
		int subtraccao(int sub=0)
		{
			sub=num-num1;
			cout<<sub;
		}
	}
	break;

case '3':
	{
		pedirNumeros(num, num1);
		int multiplicacao(int mult)
		{
			mult=num*num1;
			cout<<mult;
		}
	}
	break;

case '4':
	{
		pedirNumeros(num, num1);
		int divisao(int div)
		{
			div=num/num1;
			cout<<div;
		}
	}
	break;

case '5':
	{
		int formularesolvente()
		{
			float a,b,c;
			float X1;
			float X2;
			float Delta;
			cout<<" Indicar os valores de valores de a, b e c :"<<"\n";
			cin>>a>>b>>c;

			Delta=((b*b)-(4*a*c));
			X1=(-b+sqrt((b*b)-(4*a*c)))/(2*a);
			X2=(-b-sqrt((b*b)-(4*a*c)))/(2*a);

			if (Delta>0)
			cout<<" Existem dois valores: \n "<<X1<<"\n"<<X2<<"\n";

			else if(Delta==0)
			cout<<" Existem um valor: \n"<<X1<<"\n"<<X2<<"\n";

			else if(Delta<0)
			cout<<" Nao existe valor para a raiz, pois nao existem raizes negativas. \n"<<"\n";
		}
	}
	break;
}
break;

ja fiz ate aqui mas continua me a dar erro sera da funcao?

cumps

Share this post


Link to post
Share on other sites
KTachyon

Se disseres que erro é que dá, é mais provável que te ajudem.

Tens um switch case, com um do no interior que não é fechado e depois outro case repetido... esse código parece-me uma salganhada.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Share this post


Link to post
Share on other sites
brunoais

Isso é um código ilegível com indentações estupidamente longas, com funções declaradas dentro de um switch, com um dowhile que ainda não sei aonde acaba, com brake's qua ainda não sei a que se referem...... é quase Spaghetti code!


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
luis_liv

eu sei que ta uma grande confusao por isso e que mandei o enunciado para ver onde pudia dar o erro

Share this post


Link to post
Share on other sites
xtrm0

A função não faz nada.

O que tu fazes na função é declarar duas variaveis locais, (num e num1), e escrever dois valores para elas.

Mas quando sais da função, esses dois valores são esquecidos, visto que não usas returns.

Tens de fazer algo como:

int pedirnumeros()
{
     int a;
     cin >> a;
     return a;
}

E quando chamas a função:

variavel = pedirnumeros();
variavel1 = pedirnumeros();

Fora este erro, o teu código é uma miscelania de palavras no local errado.

Tens de incluir a biblioteca math para os sqrt, e existem raizes negativas (Visto que a constante matematica i = sqrt(-1)), aconselho-te a leres um pouco mais sobre programação antes de tentares criar código com tantos switches (não é que seja complexo, tu é que estás a inventar estruturas que não podem exitir(não fechaste bem os {} e inseriste um do no meio de uma linha de codigo normal.))

Resumidamente o que eu quero dizer é: O teu código está estúpido, aconselho-te a estudares um pouco mais sobre programação, e a melhorares a tua matemática.


<Signature goes here>

Share this post


Link to post
Share on other sites
luis_liv

os math nao e preciso

os DO e para fazer os menus

mas isso eu corrigo so queira saber onde e que se punha a funcao

o switchs e para por o programa das somas e isso

Share this post


Link to post
Share on other sites
Xpirito

Deixa ver se te explico. Não sou grande professor, mas vou tentar.

int soma(valor1, valor2)
        return valor1 + valor2;
int subtracao(valor1, valor2)
         return valor1 - valor2;
            
int main ()
   {
     // aqui escreves o teu menu
     //aqui chamas a funcao que pretendes. Para isso, escreves o nome da funcao e passas-lhe os parametros que quiseres 
     soma(valorLido1, valorLido2)
     subtracao(valorLido1, valorLido2)
     //as funcoes aparecem sempre antes do main()
   }

Resumindo

1- todos os includes e directivas de pre-processador

2-Todas as funcoes

3-main

    e aqui é que terás todos os switchs e do's e whiles que precisares


Para perguntas idiotas, respostas estúpidas!

Share this post


Link to post
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

×
×
  • 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.