Hi everyone! My name is Ricardo and i'm having a few problems with a program i'm writing.
The program should deal with products information, i'm doing it using a structure, two procedures and a main function, the purpose is so that in the first function, designation of the products should be entered, qauntity and price, the second should take that data and process it giving the full price of all products, tax per product and an average per product, i'm also trying to do it with a menu using switch.
The code i've already written is as follows:
//programa que lista 10 produtos
#include<iostream>
#include<cstdio>
using namespace std;
struct Produtos
{
char designacao[20];
int quantidade;
int quant_total;
float preco;
float preco_total;
float preco_iva;
float media;
int total_produtos;
}P[10];
void prod_receber(Produtos *R)
{
cout << "Introduza Designacao:" << endl;
gets(R->designacao);
cout << "Introduza Quantidade do Produto:" << endl;
cin >> R->quantidade;
cout << "Introduza o preco de Compra:" << endl;
cin >> R->preco;
}
void prod_listar(Produtos *L, int i)
{
cout << "Desigação do Produto:";
gets(L->designacao);
cout << "Quantidade:";
cout << L->quantidade << endl;
cout << "Preco Compra:";
cout << L->preco << endl;
L->preco_iva = (L->quantidade*L->preco)*1.21;
cout << L->preco_iva << endl;
for (i=0; L[i]<=9; i++)
{
L->preco_total = L->preco_total + preco;
}
cout << L->preco_total;
cout << "Valor Medio de Todos os Produtos:";
L->media = preco_total / 10;
cout << L->media << endl;
}
main()
{
Produtos q[10], *T=&q[10];
int menu;
int i;
cout << "Escolha uma das Opcoes;" << endl;
cout << "1 - Introduza Produto;" << endl;
cout << "2 - Por Produto o seu valor com IVA(21%);" << endl;
cout << "3 - Valor Gasto na Aquisicao de todos os Produtos;" << endl;
cout << "4 - Qual o valor Médio de todos os Produtos;" << endl;
cout << "5 - Sair do Programa;" << endl;
cout << "Introduza Opção:";
cin >> menu;
switch(menu)
{
case 1:
prod_receber(T[i]);
break;
case 2:
cout << "Introduza Posição do Produto:";
cin >> T[i];
prod_listar(T->preco_iva);
break;
case 3:
prod_listar(T->preco_total);
break;
case 4:
prod_listar(T->media);
break;
case 5:
return 0;
}
}
Can someone help me see whats wrong in the program? Thanks.
Ricardo,