0 / 0 / 0
Регистрация: 26.02.2019
Сообщений: 2
1

Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)

11.03.2019, 19:36. Показов 1775. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)

Проект в Windows Forms.

Во всех вариантах должен быть разработан комплексный тип данных и реализован набор процедур для работы с ним.
1) Процедура инициализации (Init);
2) Процедура ввода с клавиатуры (Read);
3) Процедура вывода на экран (Display);
4) Процедура по вашему варианту задания.

Задание: Описать структуру с именем ZNAK, содержащую следующие поля:
• фамилия, имя;
• знак Зодиака;
• дата рождения (массив из трех чисел).
Написать программу, выполняющую следующие действия:
• ввод с клавиатуры данных в массив, состоящий из восьми элементов типа ZNAK (записи должны быть упорядочены по дате рождения);
• вывод на экран информации о человеке, чья фамилия введена с клавиатуры
(если такого нет, вывести соответствующее сообщение).

Не получается реализовать ввод даты в массив из трех чисел(вообще нз как это сделать), так же не получается сделать сортировку по дате + вывод на экран сообщения, что данный человек отсутствует(см. задание).

Нашел множество работ по этому заданию на данном форуме в console и мне это почти ничем не помогло. Хелпуйте, ребят. Уже месяц с этой лабой парюсь.
Сам изучаю пол года в универе с++, в с# не шарю ни разу.

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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace sharp_lab0
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        public struct ZNAK
        {
            public string famname;
            public string zodiak;
            public int[] datatime;
 
            public ZNAK(string _famname, string _zodiak,int[] date )
            {
                famname = _famname; 
                zodiak = _zodiak;
                datatime = new int[date.Length];
                datatime = date;
            }
        }
 
        int CountPeople;
        ZNAK[] people = new ZNAK[8];
 
        
       
 
        private void button1_Click(object sender, EventArgs e)
        {
            people[CountPeople].famname = textBox1.Text;
            people[CountPeople].zodiak = textBox2.Text;
                                    
            people[CountPeople].datatime[0] = Convert.ToInt32(textBox3.Text);
            people[CountPeople].datatime[1] = Convert.ToInt32(textBox4.Text);
            people[CountPeople].datatime[2] = Convert.ToInt32(textBox5.Text);
            CountPeople++;
            textBox1.Clear();
            textBox2.Clear();
            textBox3.Clear();
            textBox4.Clear();
            textBox5.Clear();
        }
 
       
 
        private void button2_Click(object sender, EventArgs e)
        {
            
            listBox1.Items.Clear();
            for (int i = 0; i < CountPeople; i++)
            {
                listBox1.Items.Add(people[i].famname + "Зодиак:" + people[i].zodiak + people[i].datatime[0] + people[i].datatime[1] + people[i].datatime[2]);
            }
        }
 
    }
}
Миниатюры
Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)   Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.03.2019, 19:36
Ответы с готовыми решениями:

Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)
Описать структуру с именем PRICE, содержащую следующие поля: • название товара; • название...

Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)
Помогите плиз сделать, код нужен Описать структуру с именем TRAIN, содержащую следующие поля:...

Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)
Описать структуру с именем NOTE, содержащую следующие поля: • фамилия, имя; • номер телефона; •...

Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП) Без Консоли
Описать структуру с именем PRICE, содержащую следующие поля: • название товара; • название...

3
Эксперт .NETАвтор FAQ
10418 / 5148 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
11.03.2019, 22:30 2
Лучший ответ Сообщение было отмечено pslm как решение

Решение

Цитата Сообщение от pslm Посмотреть сообщение
не использовать конструкции ООП
Цитата Сообщение от pslm Посмотреть сообщение
в с#



Цитата Сообщение от pslm Посмотреть сообщение
Не получается реализовать ввод даты в массив из трех чисел(вообще нз как это сделать)
У вас возникает исключение из-за того, что массив datatime равен null.
Вы его нигде не создаете, кроме конструктора ZNAK. Но конструктор ZNAK вы нигде не вызываете.
поэтому в начале метода button1_Click нужно:
C#
1
people[CountPeople] = new ZNAK(textBox1.Text, textBox2.Text, new int[3]);
1
0 / 0 / 0
Регистрация: 26.02.2019
Сообщений: 2
12.03.2019, 19:14  [ТС] 3
Спасибо за помощь. Все пофиксил, все работает.

Оставляю потомкам:
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace sharp_lab0
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        public struct ZNAK
        {
            public string famname;
            public string zodiak;
            public int [] datatime;
 
            public ZNAK(string _famname, string _zodiak,int [] date)
            {
                famname = _famname; 
                zodiak = _zodiak;
                
                datatime = new int[date.Length];
                datatime = date;
            }
        }
 
        int CountPeople;
        ZNAK[] people = new ZNAK[8];
        
        private void button1_Click(object sender, EventArgs e)
        {
            people[CountPeople] = new ZNAK(textBox1.Text, textBox2.Text, new int[3]);
            people[CountPeople].famname = textBox1.Text;
            people[CountPeople].zodiak = textBox2.Text;
 
            
            people[CountPeople].datatime[0] = Convert.ToInt32(textBox3.Text);
            people[CountPeople].datatime[1] = Convert.ToInt32(textBox4.Text);
            people[CountPeople].datatime[2] = Convert.ToInt32(textBox5.Text);
            CountPeople++;
            textBox1.Clear();
            textBox2.Clear();
            textBox3.Clear();
            textBox4.Clear();
            textBox5.Clear();
        }
 
       
 
        private void button2_Click(object sender, EventArgs e)
        {
            
            listBox1.Items.Clear();
            for (int j = 0; j < CountPeople; j++)
            {
                for (int i = 0; i < CountPeople - 1; i++)
                {
                    if (people[i].datatime[2] > people[i + 1].datatime[2])
                    {
                        int temp = people[i].datatime[2];
                        string temp2 = people[i].famname;
                        string temp3 = people[i].zodiak;
                        people[i].datatime[2] = people[i + 1].datatime[2];
                        people[i].famname = people[i + 1].famname;
                        people[i].zodiak = people[i + 1].zodiak;
                        people[i + 1].datatime[2] = temp;
                        people[i + 1].famname = temp2;
                        people[i + 1].zodiak = temp3;
                    }
                }
            }
            for (int i = 0; i < CountPeople; i++)
            {
                    listBox1.Items.Add(people[i].famname + " Зодиак:" + people[i].zodiak + " Дата:" + people[i].datatime[0] +"."+ people[i].datatime[1] + "." + people[i].datatime[2]);
            }
 
            
 
 
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            listBox2.Items.Clear();
            for (int i = 0; i < CountPeople; i++)
            {
                if (textBox6.Text == people[i].famname)
                    listBox2.Items.Add(people[i].famname + " Зодиак:" + people[i].zodiak + " Дата:" + people[i].datatime[0] + "." + people[i].datatime[1] + "." + people[i].datatime[2]);
                
            }
        }
    }
}
Миниатюры
Разработать тип данных и набор процедур для работы с ним (не использовать конструкции ООП)  
0
Эксперт .NET
12505 / 8690 / 1310
Регистрация: 21.01.2016
Сообщений: 32,650
13.03.2019, 06:47 4
pslm, но вот ведь незадача: у вас в задании сказано, что никакого ООП быть не должно. Между тем, у вас мало того, что сама форма - класс, так ещё и в каждой второй строке вы с классами работаете. Как вы это сдавать преподавателю-то будете?
0
13.03.2019, 06:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2019, 06:47
Помогаю со студенческими работами здесь

Реализовать тип данных «Динамический массив целых чисел» — IntVector и основные функции для работы с ним
Реализовать тип данных «Динамический массив целых чисел» — IntVector и основные функции для работы...

Какой тип данных использовать для работы с большими числами?
Здравствуйте! Какой тип данных можно использовать для больших чисел( unsigned long long не...

ООП static и функции для работы с ним
Новичок по ООП ,возникли вопросы . 1)Функции для работы с данными static и как осуществляется...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru