Просьба оценить код и дать советы.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Объявить переменные с помощью которых можно будет посчитать общую сумму покупки нескольких товаров. Например плитки шоколада, кофе и пакеты молока.
Какие плохие и хорошие стороны есть в моем решении. Новичок,сильно не бить. (Строки не на русском потому что писал в Dev`e,не дома).
1) Лучше кривой английский, чем транслит. Это касается не только строковых литералов, но и идентификаторов («имен» функций, переменных).
2) Какой смысл от того, что Ваши функции возвращают значения, если ничего не используется (как в вызываемом, так и в вызывающем коде).
3) Нафига глобальные данные здесь нужны, решите задачу без них.
На первое время хватит.
Пару слов в защиту Ignis. Похоже, это самые первые шаги в изучении языка. Поэтому пока (!) прокатит )) Хотя с замечаниями Croessmah вполне согласен.
Мне еще очень не понравилось использование одних и тех же переменных как для стоимости единицы товара, так и для суммы стоимости нескольких единиц товара. Это плохая практика. А учитывая, что это все глобальные переменные — вдвойне плохо.
Цена и сумма должны быть, наверное, типа
double
.Функции должны быть логически необходимыми. В данном случае, если весь код свалить в
main
без всяких функций — ничего, по сути, не изменится. При разбиении программы на функции, ты руководствовался неправильной предпосылкой: этап ввода количества товаров, этап ввода стоимости и этап подсчета. А если товаров сегодня 3, завтра 4, а послезавтра 12? Как быть? Каждый раз переписывать программу?Твоя программа должна работать как кассовый аппарат в магазине: по каждому товару ввод названия, цены и количества, вывод суммы по товару; а в конце вывод итога: общее количество единиц всех товаров и общая сумма покупки. При таком рассуждении вырисовывается функция, которая каким-то образом (например, запрашивает у пользователя) получает все входные данные по покупке, а возвращает полученные данные и сумму по товару. Вызывающему коду остается только суммировать общее количество товаров и общую сумму. При таком подходе легко написать программу, которая может обрабатывать произвольное количество покупок и/или получать часть данных о покупке (например, цену) из базы данных.
Однако, есть проблема: функция может возвращать только одно значение. Решений несколько:
Например, так:
(Третий способ, на мой взгляд, самый правильный: функция должна возвращать значение, а не изменять свои аргументы. Хотя бывает, что без этого не обойдешься.)
Или, следуя правилам ООП, вообще отказаться от функции, а сделать и товар, и покупку классами и все телодвижения упаковать в методы )))
Отмаз дешевый. Не принимается.
Читай здесь.
может кто помочь с этим
[AsmLoader] 'SerbRogueSubtlety.cs' could not be compiled. Compiler Errors:
ожидалась { Line: 7 (SerbRogueSubtlety.cs.cs)
ожидалась { Line: 11 (SerbRogueSubtlety.cs.cs)
Недопустимый токен «.» в объявлении класса, структуры или интерфейса Line: 11 (SerbRogueSubtlety.cs.cs)
Недопустимый токен «[» в объявлении класса, структуры или интерфейса Line: 15 (SerbRogueSubtlety.cs.cs)
Методы должны содержать тип возвращаемого значения Line: 29 (SerbRogueSubtlety.cs.cs)
это код где нада исправить:
макс, я не спец по C#... но может то, что после
namespace ReBot
, должно быть заключено в фигурные скобки? И имя класса, оканчивающееся на.cs.cs
, внушает некоторые подозрения. Почитай спецификацию языка.По последней ошибке: видимо в определении метода ты не указал тип возвращаемого значения. Опять-таки см. доку по языку.
помогите составить блок схему