Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2010, 16:46   #1
imperceptible4462
Пользователь
 
Регистрация: 24.08.2010
Сообщений: 26
Вопрос структура со скидкой

Необходимо разработать структуру, описывающую товар в продовольственном магазине. Разработь функцию, преобразующую цену товара с учётом системы скидок: если стоимость покупки данного товара больше 100 рублей, то действует скидка1, при превешении 500 рублей-скидка2, при превешении 1000 рублей - скидка3. необходимы сведения о трёх товарах
вот код
Код:
//программа преобразет цену товара с учётом скидки
#include <stdio.h>
struct cena{
             char nazv[15];   //название товара
             float cen;       //цена
             float sale1;     //скидка1
             float sale2;     //скидка2
             float sale3;     //скидка3
             int kol;         //колличество товара
           };
void cost(tovar &b);
void main()
{        
tovar a;
int n,i;
printf("Введите кооличество товаров: ");
scanf("%d",&n);
for(i=0;i<n;i++)
{
cost(a);
}
}
//описание функции скидк
void cost(tovar &b)
{
printf("\n\tВведите название товара: ");
scanf("%s",&b.nazv);
printf("\tВведите цену: ");
scanf("%f",&b.cen);
printf("\tВведите колличество: ");
scanf("%d",&b.kol);
printf("\tВведите скидку1(цена>100): ");
scanf("%f",&b.sale1);
printf("\tВведите скидку2(цена>500):");
scanf("%f",&b.sale2);
printf("\tВведите скидку3(цена>1000):");
scanf("%f",&b.sale3);
if(b.cen*b.kol<100)
{
printf("%.2f",b.cen*b.kol);
}
if((b.cen*b.kol>100)&&(b.cen*b.kol<500))
{
printf("%.2f",b.cen*b.kol*(1-b.sale1*0.01));
}
if((b.cen*b.kol>500)&&(b.cen*b.kol<1000))
{
printf("%.2f",b.cen*b.kol*(1-b.sale2*0.01));
}
if(b.cen*b.kol>1000)
{
printf("%.2f",b.cen*b.kol*(1-b.sale3*0.01));
}
}
а вот ошибки, которые он выдаёт.
Цитата:
Compiling...
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(11) : error C2065: 'tovar' : undeclared identifier
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(11) : error C2065: 'b' : undeclared identifier
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(11) : error C2182: 'cost' : has type 'void'
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(18) : error C2065: 'a' : undeclared identifier
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(18) : error C2064: term does not evaluate to a function
d:\work\math-fac\2_kurs\group_v\chernt~1.a\34\do m\3\cost.cpp(23) : error C2448: 'cost' : function-style initializer appears to be a function definition
CL returned error code 2.
COST.EXE - 6 error(s), 0 warning(s)
не могу найти ни одной. Точнее не могу понять в чём ошибка. Подскажите

Последний раз редактировалось Stilet; 20.09.2010 в 16:53.
imperceptible4462 вне форума Ответить с цитированием
Старый 20.09.2010, 16:55   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
'tovar' : undeclared identifier
Логично... Где у тебя описан тип tovar?
cena вижу. А товар не вижу.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.09.2010, 22:43   #3
imperceptible4462
Пользователь
 
Регистрация: 24.08.2010
Сообщений: 26
По умолчанию

объявила и всё равно теже самые ошибки пишет
imperceptible4462 вне форума Ответить с цитированием
Старый 21.09.2010, 06:29   #4
imperceptible4462
Пользователь
 
Регистрация: 24.08.2010
Сообщений: 26
По умолчанию

может ошибка в обращении к указателю?
imperceptible4462 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц