Динков
?>

Кто может устно объяснить уже решенные задачи на С++. Нужен человек который хоть немного разбирается в С++. Нужно написать, что делает каждый абзац в данной программе. (1)Условие: Назовем два массива похожими, если они состоят из одних и тех же элементов (без учета кратности По двум данным массивам выясните, похожие они или нет. Решение: #include #include #include using namespace std; int main() { int n, k, s; cin >> n; map f; map sn; map::iterator it; for(int i = 0; i < n; i++){ cin >> s; if(f.count(s) >= 1) f[s]++; else f.insert(pair (s, i)); } cin >> k; for(int i = 0; i < k; i++) { cin >> s; if(sn.count(s) >= 1) sn[s]++; else sn.insert(pair (s, i)); } if(f.size() != sn.size()){ cout << "NO"; return 0; } for(it = f.begin(); it != f.end(); it++) if(sn.find(it->first) == sn.end()){ cout << "NO"; return 0; } cout << "YES"; return 0; } (2)Условие: Давид и Вероника собирали камни, они набрали много камней и сложили их в две большие кучи. Теперь они хотят определить, сколько они собрали камней, таких, что такой же размер камней есть и у Вероники, и у Давида и сложить из них третью кучу. Размеры камней могут повторяться, все камни одинакового размера из обоих куч надо складывать в третью кучу им сложить третью кучу. Решение: #include #include using namespace std; int main() { int n, k, s; cin >> n >> k; map As; map Aj; map::iterator itas, itaj; for(int i = 0; i < n; i++){ cin >> s; if(As.count(s) >= 1) As[s]++; else As.insert(pair (s, 1)); } for(int i = 0; i < k; i++){ cin >> s; if(Aj.count(s) >= 1) Aj[s]++; else Aj.insert(pair (s, 1)); } itaj = Aj.begin(); for(itas = As.begin(); itas != As.end(); itas++) if(Aj.find(itas->first) != Aj.end()){ itaj = Aj.find(itas->first); for(int i = 0; i < itas->second + itaj->second; i++) cout << itas->first << endl; } return 0; }

Информатика

Ответы

Яна_Софья

Приложение создано на основе шаблона C++/CLR Windows Forms für Visual Studio 2017

Предусмотрен ввод дробных чисел, вывод суммы проводится с не более чем 2 знаками после запятой. Также присутствует простейший контроль ввода данных: обработаны случаи неполного ввода данных и некорректного ввода данных. В обоих случаях вызывается MessageBox с сообщением об ошибке.

.txt файл, прикрепленный к ответу - .rar архив со смененным расширением. Для получения файлов необходимо снова сменить расширение файла на .rar и открыть любым архиватором. Файл trip.exe находится в trip.rar\trip\Debug\


Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется
Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется
Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется
erere4443

Приложение создано на основе шаблона C++/CLR Windows Forms für Visual Studio 2017

Предусмотрен ввод дробных чисел, вывод суммы проводится с не более чем 2 знаками после запятой. Также присутствует простейший контроль ввода данных: обработаны случаи неполного ввода данных и некорректного ввода данных. В обоих случаях вызывается MessageBox с сообщением об ошибке.

.txt файл, прикрепленный к ответу - .rar архив со смененным расширением. Для получения файлов необходимо снова сменить расширение файла на .rar и открыть любым архиватором. Файл trip.exe находится в trip.rar\trip\Debug\


Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется
Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется
Создать проект на winform, где вводится расстояние, цена бензина, потребление бензина и вычисляется

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Кто может устно объяснить уже решенные задачи на С++. Нужен человек который хоть немного разбирается в С++. Нужно написать, что делает каждый абзац в данной программе. (1)Условие: Назовем два массива похожими, если они состоят из одних и тех же элементов (без учета кратности По двум данным массивам выясните, похожие они или нет. Решение: #include #include #include using namespace std; int main() { int n, k, s; cin >> n; map f; map sn; map::iterator it; for(int i = 0; i < n; i++){ cin >> s; if(f.count(s) >= 1) f[s]++; else f.insert(pair (s, i)); } cin >> k; for(int i = 0; i < k; i++) { cin >> s; if(sn.count(s) >= 1) sn[s]++; else sn.insert(pair (s, i)); } if(f.size() != sn.size()){ cout << "NO"; return 0; } for(it = f.begin(); it != f.end(); it++) if(sn.find(it->first) == sn.end()){ cout << "NO"; return 0; } cout << "YES"; return 0; } (2)Условие: Давид и Вероника собирали камни, они набрали много камней и сложили их в две большие кучи. Теперь они хотят определить, сколько они собрали камней, таких, что такой же размер камней есть и у Вероники, и у Давида и сложить из них третью кучу. Размеры камней могут повторяться, все камни одинакового размера из обоих куч надо складывать в третью кучу им сложить третью кучу. Решение: #include #include using namespace std; int main() { int n, k, s; cin >> n >> k; map As; map Aj; map::iterator itas, itaj; for(int i = 0; i < n; i++){ cin >> s; if(As.count(s) >= 1) As[s]++; else As.insert(pair (s, 1)); } for(int i = 0; i < k; i++){ cin >> s; if(Aj.count(s) >= 1) Aj[s]++; else Aj.insert(pair (s, 1)); } itaj = Aj.begin(); for(itas = As.begin(); itas != As.end(); itas++) if(Aj.find(itas->first) != Aj.end()){ itaj = Aj.find(itas->first); for(int i = 0; i < itas->second + itaj->second; i++) cout << itas->first << endl; } return 0; }
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

djikia88
igschuschkov6211
lavr74
Gennadevna_Baidalina131
sttig
Serkova_Elena251
bufetkonfet53
Alekseevich1012
игнатова_Сергей1228
pelagia-kola2658
info2471
Сухроб944
Кашихина
Андреевна-Арзуманян1109
alexfold