Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 20
1

На Простом СИ!!!

21.04.2010, 10:09. Просмотров 597. Ответов 8
Метки нет (Все метки)

Народ нужна помощь очень сильно надо решить вот такую задачку буду очень благодарен кто поможет...
выслать задачку можно на почту Calipso-777@mail.ru или выложить тут...
Очень надеюсь что кто нить поможет...
А вот собственно она:
Продавец продает соки двух сортов. Перед началом работы он загружает полностью емкости объемом 20 стаканов. Стакана сока каждого сорта имеет свою цену.
Разработать функцию, моделирующую обслуживание продавцом одного покупателя при условии, что каждый покупатель заказывает только один стакан сока и при расчете ему может быть выдана сдача.
Разработать программу, использующую созданную функцию и моделирующую обслуживание очереди из 30 человек.

Добавлено через 13 часов 47 минут
буду очень благодарен кто сможет подсказать хотя бы как как ее составить...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2010, 10:09
Ответы с готовыми решениями:

Ошибка в простом коде
Не пойму в чем ошибка, условие правильно, цикл думал тоже, но все время один и тот же ответ. Кто...

Найти ошибку в простом уравнении
Вот задача s=\frac{2cos\,\left(x-\frac{2}{3} \right)}{\frac{1}{2}+sin^2...

Управление потоками на простом примере
Покажите на простом примере как это делается. Создаю простую программу, которая выводит на экран...

множественные ошибки в простом проэкте
#include<cmath> #include<iostream> #include <locale.h> using namespace std; int main() {...

8
221 / 135 / 48
Регистрация: 12.04.2010
Сообщений: 248
21.04.2010, 11:56 2
Примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
int money =1000;//начальные деньги продовца
int cost[]={100,200};//цена 
int juice[]={20,20};//количество 
 
int func(int type,int m)
{
    int c = cost[type];
    if(juice[type]==0) return m;
    if(m >= c){
         if(money >= m-c){
               money+=c;
               juice[type]--;
               return m-c;
         }
    }
    return m;   
}
 
int  main(void)
{int s;int t;
    for(int i = 0;i<30;i++){
        cout<<"Покупатель "<<i<<endl<<"Тип сока:"<<endl;
        cin>>t;
        cout<<"Деньги:"<<endl;
        cin>>s;
        s = func(t,s);
        cout<<"Сдача:"<<s<<endl;
   } 
    return 0;
}
2
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 20
21.04.2010, 13:20  [ТС] 3
Спасибо большое uggway
0
26 / 26 / 3
Регистрация: 05.03.2010
Сообщений: 171
21.04.2010, 13:24 4
Цитата Сообщение от uggway Посмотреть сообщение
cout
Такой "простой" Си
0
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 20
21.04.2010, 13:48  [ТС] 5
было бы неплохо если другие тоже изложат свою точку зрения на эту задачку...
п.с Если не трудно разъясняйте я тока начал изучать СИ и немного не понимаю в функциях...
Буду благодарен таким людям как uggway...
0
26 / 26 / 3
Регистрация: 05.03.2010
Сообщений: 171
21.04.2010, 14:06 6
Код, предложенный uggway на языке С++.
Вот его аналог на Си
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
int money =1000;//начальные деньги продавца
int cost[]={100,200};//цена 
int juice[]={20,20};//количество 
 
int func(int type,int m)
{
    int c = cost[type];
    if(juice[type]==0) return m;
    if(m >= c){
         if(money >= m-c){
               money+=c;
               juice[type]--;
               return m-c;
         }
    }
    return m;   
}
 
int  main(void)
{int s;int t;
    for(int i = 0;i<30;i++){
        printf("Customer: %i \nKind of juice: ", i+1);
        scanf("%i", &t);
        printf("Money: ");
        scanf("%i", &s);
        s = func(t,s);
        printf("Change: %i", s);
   } 
    return 0;
}
2
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 20
21.04.2010, 16:24  [ТС] 7
stv благодарю за корректировку для простого СИ теперь не мог ли ты разъяснить каждую функцию что она выполняет...
0
26 / 26 / 3
Регистрация: 05.03.2010
Сообщений: 171
21.04.2010, 16:59 8
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
int money =1000;//начальные деньги продавца
int cost[]={100,200};//цена 
int juice[]={20,20};//количество 
 
int func(int type,int m)    /*Функция принимает в качестве параметров два целочисленных               значения: тип напитка (1 или 2) и количество денег у покупателя m. */
{
    int c = cost[type];   //Записываем в с цену текущего напитка
    if(juice[type]==0) return m; /*Если напиток кончился, возвращаем то же самое кол-во денег без покупки */
    if(m >= c){    /*Если денег у покупателя больше, чем стоимость напитка, то*/
         if(money >= m-c){ /*Если у продавца хватает на сдачу*/
               money+=c;  /*Прибавляем плату за напиток к деньгам продавца*/
               juice[type]--; /*Уменьшаем кол-во напитка, т.к. он только что был продан*/
               return m-c; /*Возвращаем сдачу*/
         }
    }
    return m;   /*Иначе возвращаем деньги без напитка*/
}
 
int  main(void)
{int s;int t; /*t - тип напитка; s - кол-во денег у покупателя*/
    for(int i = 0;i<30;i++){
        printf("Customer: %i \nKind of juice: ", i+1);
        scanf("%i", &t);
        printf("Money: ");
        scanf("%i", &s);
        s = func(t,s); /*Передаем в функцию кол-во денег и тип напитка, возвращаем сдачу*/
        printf("Change: %i", s); /*Выводим сдачу*/
   } 
    return 0; 
}
2
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 20
21.04.2010, 19:05  [ТС] 9
Спасибо stv за корректировку задачки и разъяснения...
Однокурсники не могут решить задачки также как и я...
Тоже нуждаются в помощи Народ кто может помогите а то завтра надо здать а если не здадим будет очень хороший втык...
Также спасибо за помощь таким людям как stv и uggway...
Народ если не трудно помогите однокурсникам вот две их задачки:

1) Студент ведет картотеку библиографических описаний публикаций по интересующей его теме. В картотеку он включает карточки с описаниями книг и статей из сборников и периодических изданий (научно-технических и научно-популярных журналов, специализированных и массовых газет).
Каждое библиографическое описание обязательно выключает название публикации, автора или авторов (не более трех). Другие части описания выключаются в зависимости от вида издания, в котором помещена публикация.
Для книги указываются город, где издана книга, наименование издательства, год издания и об ем в страницах.
Для статьи в сборнике – название сборника, номер сборника (если он имеется), город, год, номер страницы, на которой начинается публикация и через дефис номер страницы, на которой она заканчивается.
Для статьи в периодическом издании – название издания, номер тома, номер выпуска, год издания, номера страниц начала и конец статьи.
Для статьи в газете – название газеты, город, дата выхода газеты, порядковый номер газеты.
В карточку для каждой публикации заносятся ключевые слова (не более пяти), характеризующие содержание публикации и дата заполнения карточки.
Разработать программу, реализующую рабочее место ведения картотеки библиографических описаний. Разработать для использования в программе функции:
включения публикации в картотеку;
формирования по запросу перечня публикаций заданного автора;
формирования по запросу перечня публикаций, содержащих в описании заданное ключевое слово;
формирования по запросу перечня публикаций, изданных в указанном году.

вот его почта: nykke@mail.ru

а вот вторая задачка:

В гостиницу прибыла группа из К туристов. Каждый турист должен быть поселен в отдельный номер. Администратор располагает перечнем свободных номеров с указанием их вместимости (одноместный, двухместный, трехместный). Кроме того, у администратора имеется поступивший независимо от этого перечня перечень номеров, в которых будет производиться замена мебели.
Разработать функцию, которая описывает алгоритм поселения туриста в номер, и использующую ее программу, моделирующую работу администратора при следующих предположениях:
поселение происходит в одноместные номера и только при их отсутствии в номера большей вместимости (сначала в двухместные, а по их занятии – в трехместные);
поселение возможно только в те номера, в которых не будет производиться замена мебели;
после окончания поселения у администратора образуется перечень поселенных туристов с указанием занимаемых ими номеров.

и его почта : boikoolegnet@mail.ru

Очень надеюсь что найдутся люди которым не тяжело за это взяться...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2010, 19:05

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Неявные интерфейсы С++ шаблонов. Сложно о простом
Неявные интерфейсы С++ шаблонов. Сложно о простом. Вот заметка в формате PDF о том, как...

Странный баг в простом консольном приложении С++
Написал код, все работает как надо вот только оно предлагает вводить названия &quot;призов&quot; со второго,...

Объясните пожалуйста realloc на простом языке
Зачем нужен и какой-нибудь пример и помогите понять для чего он здесь ...

Определить, является ли слово next в простом предложении наречием
Определить,является ли слово next в простом предложении наречием. Вот такая вот задача.....на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.