Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 12

Создать класс Money, содержащий следующие члены класса

01.11.2023, 15:45. Показов 889. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание такое: Создать класс Money, содержащий следующие члены класса:
поля: int first (номинал купюры); int second (количество купюр);
конструктор, позволяющий создать экземпляр класса с заданными значениям полей;
методы, позволяющие вывести номинал и количество купюр, определить, хватит ли денежных средств на покупку товара на сумму N рублей, определить, сколько штук товара стоимости n рублей можно купить на имеющиеся денежные средства;
свойства, позволяющие получить/установить значение полей (доступное для чтения и записи), рассчитать сумму денег (доступное только для чтения).

на listViewMoney пишет ошибку , я так понимаю в конструкторе чтото накосячил или не?

Заранее спасибо)

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
public partial class Form1 : Form
    {
 
        private List<Money> moneyList;
        public Form1()
        {
            InitializeComponent();
 
            // Создаем список денежных средств
            moneyList = new List<Money>();
            moneyList.Add(new Money(100, 10));
            moneyList.Add(new Money(50, 20));
            moneyList.Add(new Money(10, 50));
            moneyList.Add(new Money(5, 100));
            moneyList.Add(new Money(1, 200));
 
            // Заполняем ListView элементами из списка денежных средств
            foreach (Money money in moneyList)
            {
                ListViewItem item = new ListViewItem(money.First.ToString());
                item.SubItems.Add(money.Second.ToString());
                listViewMoney.Items.Add(item);
            }
 
        }
 
 
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            int a, b;
            a = Convert.ToInt32(textBox1.Text);
            b = Convert.ToInt32(textBox2.Text);
            Money money = new Money(a, b);
            money.Num();
 
 
        }
 
  
    }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.11.2023, 15:45
Ответы с готовыми решениями:

Создать класс Rectangle, содержащий следующие члены класса
VS 2010. Компилятор выдает ошибки, Предложение using должно предшествовать любым другим элементам пространства имен кроме объявлений...

Создать класс Point, содержащий следующие члены класса
Методы, позволяющие: • вывести координаты точки на экран; • рассчитать расстояние от начала координат до точки; • переместить точку...

Создать класс Money, разработав элементы класса
Задача: Создать класс Money, разработав следующие элементы класса: * Поля: int value;//номинал купюры int amount;...

8
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
01.11.2023, 15:56
Цитата Сообщение от apchihba Посмотреть сообщение
на listViewMoney пишет ошибку
Какую?
0
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,404
01.11.2023, 16:01
Цитата Сообщение от apchihba Посмотреть сообщение
money.First
что это?
темболее все ошибки вижла пишет
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
01.11.2023, 17:54
apchihba, а зачем Вам List, если по заданию его нет? и где класс, который представляет собой описание задания? поля, свойства, конструктор, методы?
0
 Аватар для Doomov
1056 / 335 / 119
Регистрация: 28.11.2020
Сообщений: 1,066
02.11.2023, 11:50
Это токо пример
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
public class Money
{
    private int first; // номинал купюры
    private int second; // количество купюр
 
    // Конструктор
    public Money (int first, int second)
    {
        this.first = first;
        this.second = second;
    }
 
    // Свойства для чтения и записи значений полей
    public int First
    {
        get { return first; }
        set { first = value; }
    }
 
    public int Second
    {
        get { return second; }
        set { second = value; }
    }
 
    // Свойство для расчета суммы денег
    public int TotalAmount
    {
        get { return first * second; }
    }
 
    // Методы
 
    // Метод. Вывод номинала и количества купюр
    public void Print()
    {
        Console.WriteLine ($"Номинал: {first} рублей");
        Console.WriteLine ($"Количество купюр: {second}");
    }
 
    // Метод. Проверка, хватит ли денег на покупку товара на сумму N рублей
    public bool CanAfford (int amount)
    {
        return amount <= TotalAmount;
    }
 
    // Метод.Расчет количества товара стоимости n рублей, которое можно купить
    public int CalculateQuantity (int price)
    {
        return TotalAmount / price;
    }
}
А это в проге..
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    Money money = new Money (100, 5); // Создание экземпляра класса с заданными значениями полей
    money.Print(); // Вывод номинала и количества купюр
    Console.WriteLine ($"Общая сумма денег: {money.TotalAmount} рублей");
 
    int purchaseAmount = 350;
    bool canAfford = money.CanAfford (purchaseAmount); // Проверка, хватит ли денег на покупку товара
    if (canAfford)
    {
        Console.WriteLine ("Денежных средств хватает на покупку");
        // Расчет количества товара, который можно купить
        int quantity = money.CalculateQuantity (purchaseAmount); 
        Console.WriteLine ($"Можно купить {quantity} штук товара стоимости {purchaseAmount} рублей");
    }
    else
        Console.WriteLine ("Денежных средств не хватает на покупку");
1
0 / 0 / 0
Регистрация: 15.12.2022
Сообщений: 12
05.11.2023, 21:02  [ТС]
AndreyVorobey,
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
 public partial class Form1 : Form
    {
 
        private List<Money> moneyList;
        public Form1()
        {
            InitializeComponent();
 
            // Создаем список денежных средств
            moneyList = new List<Money>();
            moneyList.Add(new Money(100, 10));
            moneyList.Add(new Money(50, 20));
            moneyList.Add(new Money(10, 50));
            moneyList.Add(new Money(5, 100));
            moneyList.Add(new Money(1, 200));
 
            // Заполняем ListView элементами из списка денежных средств
            foreach (Money money in moneyList)
            {
                ListViewItem item = new ListViewItem(money.First.ToString());
                item.SubItems.Add(money.Second.ToString());
                listViewMoney.Items.Add(item);
            }
 
        }
 
 
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            int a, b;
            a = Convert.ToInt32(textBox1.Text);
            b = Convert.ToInt32(textBox2.Text);
            Money money = new Money(a, b);
            money.Num();
 
 
        }
 
  
    }
    class Money
    {
        public int first;
        public int second;
        public Money(int first, int second)
        {
            this.first = first;
            this.second = second;
        }
        public void Num()
        {
            MessageBox.Show("номинал равен: " + Convert.ToString(first) + "количество купюр " + Convert.ToString(second));
        }
 
        public int First
        {
            get { return first; }
            set { first = value; }
        }
 
        public int Second
        {
            get { return second; }
            set { second = value; }
        }
 
        public int TotalSum
        {
            get { return first * second; }
        }
 
        public bool IsEnoughMoney(int sum)
        {
            return sum <= TotalSum;
        }
 
        public int CountOfGoods(int price)
        {
            return TotalSum / price;
        }
 
    }
Добавлено через 2 минуты
OwenGlendower, имя listViewMoney не существует в данном контексте
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
05.11.2023, 21:08
Цитата Сообщение от apchihba Посмотреть сообщение
имя listViewMoney не существует в данном контексте
Добавьте на форму ListView и дайте ему имя listViewMoney.
1
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
07.11.2023, 11:02
Цитата Сообщение от Doomov Посмотреть сообщение
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
private int first; // номинал купюры
private int second; // количество купюр
// Свойства для чтения и записи значений полей
public int First
{
    get { return first; }
    set { first = value; }
}
public int Second
{
    get { return second; }
    set { second = value; }
}
Это в автосвойства надо
C#
1
2
public int First { get; set; }
public int Second { get; set; }
1
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3429 / 2748 / 575
Регистрация: 04.09.2018
Сообщений: 8,625
Записей в блоге: 3
09.11.2023, 02:36
Doomov, думаю, тут ошибка закралась еще в самом задании.
Если класс Money представляет собой достоинство (номинал) купюры и их количество, то этот класс не может решать - хватит ли его купюр для покрытия стоимости товара.
Совокупность купюр (классов Money) и их количеств - есть "кошелек" (List), вот исходя из этого можно решать, хватит ли средств или нет.

Добавлено через 51 минуту
На всякий случай, предложу свое решение:
Класс "банкноты":
C#
1
2
3
4
5
6
7
8
9
10
11
12
internal class Moneyt
{
    public int Nominal { get; init; }
    public int Count { get; init; }
    public int Amount => Nominal * Count;
 
    public Moneyt(int nom, int cnt) 
    {
        Nominal = nom;
        Count = cnt;
    }
}
"Кошелек":
C#
1
2
3
4
5
6
internal class Cash : List<Moneyt>
{
    public int CashAmount => this.Sum(x => x.Amount);
    public bool IsEnought(int cost) => cost <= CashAmount;
    public int HowManyWares(int cost) => CashAmount / cost;
}
В основной программе:
C#
1
2
3
4
5
6
7
8
9
10
Cash money = new Cash()
{
    new Moneyt(100, 10),
    new Moneyt(50, 20),
    new Moneyt(10, 50),
    new Moneyt(5, 100),
    new Moneyt(1, 200)
};
 
Console.WriteLine(money.CashAmount);
Методы класса IsEnought (хватает ли средств для покупки) и HowManyWares (сколько можно купить товара) предлагаю проверить заинтересованным самостоятельно.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.11.2023, 02:36
Помогаю со студенческими работами здесь

Создать класс с именем STUDENT, содержащий следующие поля
Класс с именем STUDENT, содержащий следующие поля: фамилия и инициалы, дисциплина, отметка. Упорядочить массив по дисциплине, в случае...

Создать класс с именем Money, содержащий два поля: количество рублей и количество копеек
Создать класс с именем Money, содержащий два поля: количество рублей и количество копеек. Методы вывода должен выводить значения в формате...

Создать класс треугольник. Члены класса - координаты 3-х точек
Создать класс треугольник. Члены класса - координаты 3-х точек. Предусмотреть в классе методы проверки существования треугольника,...

Создать класс четырехугольник, члены класса - координаты 4-х точек
1) Создать класс четырехугольник, члены класса - координаты 4-х точек. Предусмотреть в классе методы вычисления и вывода сведений о фигуре...

Класс Money, содержащий следующие члены класса
Элементы управления ListView, TextBox, Button. В программе должна выполняться проверка всех разработанных элементов класса. Класс...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru