Ir ao conteúdo
  • Cadastre-se
Sonyfenix

A partir de seu nome 

Recommended Posts

Desenvolva um programa em C, organizado em funções, que gerencia uma coleção de receitas culinárias. Para cada receita são mantidos os seguintes dados: nome, se doce ou salgada, quantidade de calorias por porção, tipo (padrão ou vegana), modo de preparo: se usa fogão, se usa forno, e se usa geladeira. Seu programa deve permitir o cadastro de até 10 receitas, e oferecer as seguintes funcionalidades: 

Consultar o cadastro completo de receita a partir de seu nome 

Listar todas as receitas a partir de um tipo informado pelo usuário 

Listar todas as receitas a partir de um dos componentes do modo de preparo 

Listar o nome de todas as receitas e se doce ou salgada ordenados pela quantidade de calorias


parte do código feito ate agora

char nome[10],sabor[10],tipo[10],mdpreparo[10];
    float qtdc[10];
};
struct receita r;
int main ()
{
  int i;
   struct receita r[10];

bom comecei a fazer o código hj e me deparei com duvida logo no primeiro tópico do trabalho.

nao sei como se faz para fazer um bloco de receitas para cada pessoa 

 

exemplo

 

pessoa1 

              bloco de receitas 

pessoa2 

              bloco de receitas 

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Sonyfenix Olá, eu fiz o código em C++ usando um vetor de struct para armazenar, e usei também switch case para encontrar o cadastro a partir do nome, se você entende um pouco de C++ poderá compreender meu código.

#include <iostream>

using namespace std;
typedef struct
{
    string nome;
    string sabor;
    double calorias;
    string tipo;
    string preparo;

} Receitas;

int main()
{
    Receitas r[10];
    int i=0, caso;
    string nome;

    cout << "A leitura encerra quando digitar 0 no nome\n";
    cout << "Nome: ";
    while((cin >> nome)&&(nome!= "0"))
    {
        r[i].nome = nome;
        cout << "\nSabor: ";
        cin >> r[i].sabor;
        cout << "\nCalorias: ";
        cin >> r[i].calorias;
        cout << "\nTipo: ";
        cin >> r[i].tipo;
        cout << "\nPreparo: ";
        cin >> r[i].preparo;
        cout << "\nNome: ";
        i++;
    }
    cout << "Digite 1 para Consultar o cadastro completo de receita a partir de seu nome: \n";
    cout << "Digite 2 para Listar todas as receitas a partir de um tipo informado pelo usuario: \n";
    cout << "Digite 3 para Listar todas as receitas a partir de um dos componentes do modo de preparo: \n";
    cout << "Digite 4 para Listar o nome de todas as receitas e se doce ou salgada ordenados pela quantidade de calorias: \n";
    cin >> caso;
    switch(caso){
    case 1:
        cout << "Digite o Nome: \n";
        cin >> nome;
        for(int j=0; j<i; j++)
        {
            if(r[j].nome == nome)
            {
                cout << r[j].nome << endl;
                cout << r[j].calorias << endl;
                cout << r[j].preparo << endl;
                cout << r[j].sabor << endl;
                cout << r[j].tipo << endl;
            }
        }
        break;
    case 2: // casos vazios, não me deu tempo de fazer, mas segue a mesma lógica no primeiro case
       break;
    case 3:
        break;
    case 4:
        break;
    }
    return 0;
}

Qualquer duvida me pergunte.

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa obrigado mano este codigo vai me ajudar muito, so algumas partes que nao entendi pois nunca programei em c++.

 

nesta primeira parte nao sei o que seria o "cin" 

while((cin >> nome)

esta parte acho que seria para chamar o struct e poder cadastrar mas nao tenho certeza 

r[i].nome = nome;

e isto aqui seria a verificação no array para mostrar todos os iguais né ?

if(r[j].nome == nome)

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

×