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

Алгоритм работы программы

05.06.2022, 21:08. Показов 252. Ответов 3

Author24 — интернет-сервис помощи студентам
Код
#include <iostream>
#include <iomanip>
#include <string>
#include <fstream>
using namespace std;
struct man
{
	string fam, im, otch, gender, national, country, obl, rayon, city, street;
	int height, weight, y, m, d, index, dom, kv;
};
//возвращает 1 если d1>d2
//возвращает -1 если d1<d2
//возвращает 0 если d1=d2
int CompareDates(int y1,int m1, int d1, int y2, int m2, int d2)
{
	if (y1 > y2)	//сначала сравниваем годы
		return 1;	//и в зависимости от этого возвращаем результат
	if (y1 < y2)
		return -1;
	if (m1 > m2)	//затем месяцы
		return 1;
	if (m1 < m2)
		return -1;
	if (d1 > d2)	//и дни
		return 1;
	if (d1 < d2)
		return -1;
	return 0;		//если дошли сюда, значит даты точно совпадают
}

int main()
{
	setlocale(LC_ALL, "Russian");//русская локаль
	fstream fin("input.txt", ios::in);
	if (fin.fail())	//при ошибке открытия
	{
		cout << "Не удается открыть файл input.txt" << endl;
		system("pause");
		return 0;
	}
	man m,youngest;
	cout << "Список манекенщиц: ";
	bool fst = true;
	while (!fin.eof())
	{
		fin >> m.fam >> m.im >> m.otch >> m.gender >> m.national >> m.height >> m.weight >> m.y >> m.m >> m.d >> m.index >> m.country >> m.obl >> m.rayon >> m.city >> m.street >> m.dom >> m.kv;
		if (!fin.fail())
		{
			cout << m.fam << " " << m.im << " " << m.otch << " рост: " << m.height << "см вес: " << m.weight << "кг" << endl;
			cout << "Национальность: " << m.national <<" Дата рождения: " << setw(2) << setfill('0') << m.d << "." << setw(2) << setfill('0') << m.m << "." << m.y << endl;
			cout << "Домашний адрес. Индекс: " << m.index << " Страна: " << m.country << " область: " << m.obl << " район: " << m.rayon << " город: " << m.city << " ул. " << m.street << " дом " << m.dom << " кв. " << m.kv << endl;
			cout << "---------------------------------------------------" << endl;
			if (fst)
			{
				youngest = m;
				fst = false;
			}
			else
			{
				if (CompareDates(m.y, m.m, m.d, youngest.y, youngest.m, youngest.d) == 1)
				{
					youngest = m;
				}
			}
		}
	}
	fin.close();
	fstream fout("output.txt", ios::out);
	fout << "Самая молодая манекенщица:" << endl;
	fout << youngest.fam << " " << youngest.im << " " << youngest.otch << " рост: " << youngest.height << "см вес: " << youngest.weight << "кг" << endl;
	fout << "Национальность: " << youngest.national << " Дата рождения: " << setw(2) << setfill('0') << youngest.d << "." << setw(2) << setfill('0') << youngest.m << "." << youngest.y << endl;
	fout << "Домашний адрес. Индекс: " << youngest.index << " Страна: " << youngest.country << " область: " << youngest.obl << " район: " << youngest.rayon << " город: " << youngest.city << " ул. " << youngest.street << " дом " << youngest.dom << " кв. " << youngest.kv << endl;
	fout.close();
	cout << "Результат сохранен в файл output.txt" << endl;
	system("pause");
	return 0;
}
Добавлено через 27 секунд
Объясните пожалуйста поподробнее алгоритм работы программы
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2022, 21:08
Ответы с готовыми решениями:

подробный алгоритм работы программы
#include&lt;iostream.h&gt; /*библиотека, отвечающая за потоковый ввод-вывод*/ #include&lt;fstream.h&gt;...

Написать алгоритм работы программы
#include &lt;iostream&gt; using namespace std; double k = 0.5 * pow(10, -4); double a(float x) { int...

Объяснить алгоритм работы программы
На чёрно-белом изображении размером A строк x B столбцов необходимо найти полностью белый квадрат с...

Написать алгоритм работы программы
#include &lt;iostream&gt; #include &lt;cstring&gt; #include &lt;ctime&gt; using namespace std; int main() {...

Объясните пожалуйста алгоритм работы программы
#include &lt;stdio.h&gt; #include &lt;iostream&gt; using namespace std; int main() { char grade;...

3
Заблокирован
05.06.2022, 21:23 2
Цитата Сообщение от Yofox Посмотреть сообщение
Объясните пожалуйста поподробнее алгоритм работы программы
Ты б к автору обратился сразу.
Кликните здесь для просмотра всего текста
1
1 / 1 / 0
Регистрация: 12.01.2022
Сообщений: 16
05.06.2022, 21:40  [ТС] 3
да тут не в мудренности кода суть, он хорош как и автор, просто я хочу сам алгоритм (описание) подобного хочу понять.
0
4768 / 2578 / 892
Регистрация: 29.11.2010
Сообщений: 5,575
06.06.2022, 08:25 4
Цитата Сообщение от Yofox Посмотреть сообщение
string fam, im, otch, gender, national, country, obl, rayon, city, street;
int height, weight, y, m, d, index, dom, kv;
Едрить твою налево душу мать.

Я как-то кодил системы документооборота, так даже там не было таких эпосов.
Шикарные именования - otch, obl, kv, rayon.

Восемнадцать полей. Это-ж не лень было кому-то!
Предлагаю хранить в кассандре. Или в hbase.

Цитата Сообщение от Yofox Посмотреть сообщение
я хочу сам алгоритм (описание) подобного хочу понять
Я бы тоже хотел понять, почему кто-то соглашается подобное писать, а потом другой это пытается разобрать.
Как эта ситуация вообще сложилась?
Вы угрожали автору или его семье, пока он не разродился этим... кодом..., потом он сбежал, и теперь вы пытаетесь понять, что это значит?

Добавлено через 2 минуты
Цитата Сообщение от Yofox Посмотреть сообщение
fout << "Домашний адрес. Индекс: " << youngest.index << " Страна: " << youngest.country << " область: " << youngest.obl << " район: " << youngest.rayon << " город: " << youngest.city << " ул. " << youngest.street << " дом " << youngest.dom << " кв. " << youngest.kv << endl;
Забавный факт. В этой строке 257 символов и один знак переноса -- в самом конце.
Должно быть, очень широкий монитор.
1
06.06.2022, 08:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2022, 08:25
Помогаю со студенческими работами здесь

Составить Алгоритм работы программы (программа есть)
Есть следующая программа Реализовать шаблон класса Stack, реализующий стек. Для представления...

Объясните алгоритм работы программы на проверку наличия нуля в введённых числах
#include &lt;iostream&gt; using namespace std; int main() { int x, n; cin &gt;&gt; n; bool zero =...

Разработайте алгоритм и программу, реализующую этот алгоритм. Исходные данные вводите из текстового файла. Результаты работы программы также помести
Разработайте алгоритм и программу, реализующую этот алгоритм. Исходные данные вводите из...

Алгоритм работы программы
Здравствуйте. Имеется часть алгоритма работы программы. Скрин прилагается. Подскажите пожалуйста,...

Алгоритм работы программы
Может я не в той теме,извините. две папки in и out, из in поступает письмо, как только оно...

Составить алгоритм работы программы
program ToWords; uses IntToWord in 'IntToWord.pas'; var F_in: Text; ...


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

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

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