Лабораторная работа 12 словарь, структура
Коллекция Dictionary<K, V> Создание и инициализация словаря Dictionary<TDictionary<TKey,TValue> ,TValue> People. Key
https://proglib.io/p/uchebnik-po-c-rabota-s-kollekciyami-dictionary-k-v-2022-08-14
KeyValuePair
Создать словарь вида <строка, строка> - <Страна, Столица>. Из него сформировать словарь вида <строка, строка>- <Столица,
Формирование словаря и вывод в консоль
Удалить все
Поиск ключа по значению FirstOrDefault и LastOrDefault Методы Возвращают первый(последний) элемент последовательности или
Словарь. Сортировка по ключу Для сортировки набора данных в LINQ можно применять оператор orderby Оператор orderby принимает
Словарь . Сортировка по значению
Словарь . Сортировка по значению
Отсортировать и вывести часть элементов
задача
задача
Ключевое слово void в языке программирования C# используется для обозначения отсутствия возвращаемого значения метода. Когда
Структура- это копирование
класс
Класс -это ссылочный тип
Часть задачи решена , дописать ее
задача
Задача (консольное приложение):
Перегрузка изменение аргументов изменение типа данных
пример представлено четыре разных версии метода Add, то есть определены четыре перегрузки данного метода.
задача
ООП. Массив
Перегрузка метода
1.89M
Category: programmingprogramming

ТИ_Лабораторная работа 12

1. Лабораторная работа 12 словарь, структура

Читать слайды 2-17
Обязательно решить слайд 18
Читать слайды 19-22
Решить слайды 23-26 (на выбор 2 задачи)
Обязательно решить слайд 33
Решить слайд 34 на оценку «отлично»
Слайды 35- 44 читать, выполнить слайд 40 при наличии времени и настроения))
1

2. Коллекция Dictionary<K, V> Создание и инициализация словаря Dictionary<TDictionary<TKey,TValue> ,TValue> People. Key

Коллекция Dictionary<K, V>
Создание и инициализация словаря
Dictionary<TDictionary<TKey,TValue>
,TValue>
People. Key (экземпляр. свойство)
People. Value
• Dictionary<int, string> people = new Dictionary<int, string>();
2

3. https://proglib.io/p/uchebnik-po-c-rabota-s-kollekciyami-dictionary-k-v-2022-08-14

3

4.

4

5.

5

6. KeyValuePair

• https://proglib.io/p/uchebnik-po-c-rabota-s-kollekciyamidictionary-k-v-2022-08-14
• По сути, словарь — это коллекция, т. е. набор
элементов, тип элементов — KeyValuePair<TKey, TValue>,
где TKey — ключ, а TValue — значение.
• Данная структура предоставляет свойства Key и Value, с
помощью которых можно получить ключ и
значение. Стоит отметить, что каждый элемент в
словаре представляет структуру KeyValuePair<TKey,
TValue>, где параметр TKey представляет тип ключа, а
параметр TValue - тип значений элементов.
6

7.

7

8.

8

9. Создать словарь вида <строка, строка> - <Страна, Столица>. Из него сформировать словарь вида <строка, строка>- <Столица,

Создать словарь вида <строка, строка> - <Страна, Столица>. Из него сформировать словарь
вида <строка, строка>- <Столица, Страна>. Содержимое исходного и результирующего словаря
вывести в консоль.
9

10. Формирование словаря и вывод в консоль

10

11. Удалить все

11

12.

12

13.

13

14.

• Операции First, FirstOrDefault, Last и LastOrDefault
• https://professorweb.ru/my/LINQ/base/level3/3_5.php
14

15. Поиск ключа по значению FirstOrDefault и LastOrDefault Методы Возвращают первый(последний) элемент последовательности или

значение по умолчанию,
если ни одного элемента не найдено.
https://professorweb.ru/my/LINQ/base/level3/3_5.php
15

16.

16

17.

17

18.

1) Создать набор типа словарь ключ-значение содержащий 10
ключ-значение.
Осуществить поиск значения в соответствии с введенным
ключом, если такой есть то вывести его значение на экран, если
отсутствует, то вывести соответствующее сообщение.
Удалить из набора найденный элемент.
Вывести на экран все оставшиеся элементы.
Удалить все элементы набора.
18

19. Словарь. Сортировка по ключу Для сортировки набора данных в LINQ можно применять оператор orderby Оператор orderby принимает

Словарь. Сортировка по ключу
Для сортировки набора данных в LINQ можно
применять оператор orderby
Оператор orderby принимает критерий сортировки.
Вместо оператора orderby можно применять метод
расширения OrderBy():
19

20. Словарь . Сортировка по значению

20

21. Словарь . Сортировка по значению

21

22. Отсортировать и вывести часть элементов

22

23.

задача
2) Известны фамилии и суммарный балл,
полученный каждым из 10 абитуриентов на
вступительных экзаменах. Вычислить
проходной балл (это такой балл, что все
абитуриенты, которые набрали его или более
приняты в институт), если известно, что
должны быть приняты 4 студента.
23

24. задача

3) В магазин поступил товар. Найти, какой
общий вес товара пришел
Console.WriteLine(dict.Values.Sum());
Какого товара пришло меньше всего
dict.Values.Min
В программе организовать словарь
наименование товара-ключ и его весзначение.
24

25. задача

4) Вводим нумерованный несортированный
список названий улиц города.
Напечатать список в алфавитном порядке без
указания первоначального номера.
25

26.

задача
5) Известны данные о росте 15 юношей класса,
упорядоченные по убыванию. Нет ни одной
пары учеников, имеющих одинаковый рост. В
начале учебного года в класс поступил новый
ученик.
Какое место в перечне ростов займет рост этого
ученика?
Известно, что его рост не совпадает с ростом ни
одного из учеников класса, превышает рост
самого низкого ученика и меньше роста самого
высокого. Условный оператор не использовать.
26

27. Ключевое слово void в языке программирования C# используется для обозначения отсутствия возвращаемого значения метода. Когда

СТРУКТУРА
Ключевое слово void в языке
программирования C# используется
для обозначения отсутствия
возвращаемого значения метода.
Когда метод объявляется с
возвращаемым типом void, это
означает, что метод выполняет
определённые действия, но не
возвращает никакого результата.
27

28. Структура- это копирование

28

29. класс

29

30. Класс -это ссылочный тип

30

31.

• Структуры синтаксически очень похожи на классы, но
существует принципиальное отличие, которое заключается в
том, что класс – является ссылочным типом (reference type), а
структуры – значимым типом (value type) (см. статью «Типы
данных«). Следовательно, классы всегда создаются в так
называемой “куче” (heap), а структуры создаются в стеке (stack).
• главное отличие структур и классов: структуры, указываемые в
списке параметров метода, передаются по значению (то есть
копируются), объекты классов — по ссылке. Именно это
является главным различием в их поведении, а не то, где они
хранятся.
• структура только для чтения, изменять ее не надо. Потому и
все свойства в структуре только с геттерами
31

32. Часть задачи решена , дописать ее

32

33. задача

6) Создать структуру Games
• Три поля (string, string, int)
• метод вывод данных
7) Создать класс Car.
• Поля Марка, скорость максимальная,
скорость минимальная
• Метод скорость средняя
33

34. Задача (консольное приложение):

8) Описать структуру с именем POKUPKA, содержащую
следующие поля:
• Имя покупателя
• Название магазина
• Название товара
• Вес в граммах товара
Напишите программу, выполняющую следующие
действия:
• Ввод с клавиатуры данных о покупке;
• Вывод на сведений о покупке с указанием веса в
килограммах и граммах
34

35. Перегрузка изменение аргументов изменение типа данных

35

36.

• И в языке C# можно создавать в классе
несколько методов с одним и тем же именем,
но разной сигнатурой.
• Сигнатура складывается из следующих
аспектов:
• Имя метода
• Количество параметров
• Типы параметров
• Порядок параметров
• Модификаторы параметров
36

37.

перегрузка метода
как раз заключается в том, что методы имеют
разную сигнатуру, в которой совпадает только
название метода.
То есть методы должны отличаться по:
• Количеству параметров
• Типу параметров
• Порядку параметров
• Модификаторам параметров
37

38. пример представлено четыре разных версии метода Add, то есть определены четыре перегрузки данного метода.


class Calculator
{
public void Add(int a, int b)
{
int result = a + b;
Console.WriteLine($"Result is {result}");
}
public void Add(int a, int b, int c)
{
int result = a + b + c;
Console.WriteLine($"Result is {result}");
}
public int Add(int a, int b, int c, int d)
{
int result = a + b + c + d;
Console.WriteLine($"Result is {result}");
return result;
}
public void Add(double a, double b)
{
double result = a + b;
Console.WriteLine($"Result is {result}");
}
}
38

39.

39

40. задача

• Решить пример
для разных типов данных.
• Использовать перегрузку методов.
40

41. ООП. Массив

• два поля
тип элементов
массива.
Длина массива.
• Конструктор
• Два метода
41

42.

42

43. Перегрузка метода

43

44.

44
English     Русский Rules