Ir ao conteúdo
  • Cadastre-se
Anderson Luan Rodrigues

C Menu em C com 4 opções

Recommended Posts

Bom dia, preciso da ajuda de alguém que entenda de C.

Tenho problemas com a sintaxe e não estou conseguindo fazer sem erros, segue abaixo o que precisa no menu;

 

Preciso criar uma estrutura de menu, usando WHILE, que receba 4 opções:

Menu 1: Deverá chamar uma função do tipo void que solicite ao usuário um número e imprima a seguinte estrutura, conforme número informado (exemplo para número 4):

4 4 4 4 * 3 3 2 * * 2 2 * * * 1

Menu 2: Chamar uma função que gere a sequência de Fibonacci para a quantidade informada.

Menu 3: Chamar uma função que recebe um vetor A e gere um vetor B com o resultado do fatorial do número relativo em A.

Menu 4: Chamar uma função que receba por parâmetro dois valores (pedir ao usuário os valores antes de chamar a função) e retorne a qual a média entre os dois.

 

 

Segue abaixo o que consegui fazer mas com problema, se alguém conseguir me passar a estrutura do menu os exercícios eu sei fazer.

 

#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[]) {

void Menu_1(int para)
{
	int i = 0;
        char linha = "";
        char resultado = "";
        int valor = para;
        while (i < para) {
            linha = "";

           int j = 0;
            int qtdeast = 0;
            qtdeast = para - (para - i);
            while (j < para) {
                if (qtdeast > 0) {
                    linha = linha + "* ";
                } 
                qtdeast--;
                j++;
            }
}

void Menu2( int para)
{
  int i = 1;
        int valor1 = 0;
        int valor2 = 0;
        int aux = 0;
        char resultado = "";
        while (i <= para) {
            if (i == 1) {
                aux = 0;
                valor1 = 0;
                valor2 = 1;
                resultado = valor2.tochar();
            } else {
                aux = valor1;
                valor1 = valor2;
                valor2 = valor1 + aux;
                resultado = resultado + ", " + valor2.tochar();
            }
}

void Menu3(int para)
{
int i = 0;
        char linha = "";
        int resultado = 1;
        while (i < VetorA.size()) {
            resultado = 1;
            int j = VetorA.get(i);
            while (j > 0) {
                //valor 5
                //5*4*3*2*1
                resultado = resultado * j;
                j--;
            }
            linha = linha + "Fatorial de: "+ VetorA.get(i).toString() + " é: "+ resultado.tochar() + "\n";

}

void sair()
{
    printf("");
}


int main()
{
    int continuar=1;

    do
    {
        printf("\n\tChat Foreve Alone\n\n");
        printf("1. Menu 1\n");
        printf("2. Menu 2\n");
        printf("3. Menu 3\n");
        printf("4. Menu 4\n");

        scanf("%d", &continuar);
        system("cls || clear");

        switch(continuar)
        {
            case 1:
                Menu1();
                break;

            case 2:
                Menu2();
                break;

            case 3:
                Menu3();
                break;

            case 4:
                Menu4();
                break;

            default:
                printf("Digite uma opcao valida\n");
        }
    } while(continuar);
}


	return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Talvez devas estudar o básico dos tipos em C.

/*
 * Menu 1: Deverá chamar uma função do tipo void que solicite ao usuário um 
 * número e imprima a seguinte estrutura, conforme número informado 
 * (exemplo para número 4):
 *
 *                        4 4 4 4 * 3 3 3 * * 2 2 * * * 1
 */
void menu_01( void )
{
  int para= 0;
  
  printf( "%s","Informe um para?\n: " ); /* escrever no prompt         */
  scanf( " %d",&para );                  /* ler no prompt para inteiro */
  
  int a= 0;
  while (a < para) {
    
    int b= a;
    while (b < para) { 
      
      printf( "%d ",para - a );
      b+= 1;
    }
    int c= a + 1;
    while (0 < c&&c < para) {
      
      printf( "%s ","*" );
      c+= -1;
    }
    a+= 1;
  }
  printf( "%s","\n" );
  return;
}

Não sei o que fazer para que sua implementação funcione, Fiz essa acima para comparação.

O enunciado tem problema na exibição dos números '332', não faz sentido.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×