Описать структуру с именем NOTE, содержащую следующие поля:
–фамилия, имя;
–номер телефона;
–дата рождения (массив из трёх чисел).
Написать программу, выполняющую следующие действия:
–ввод с клавиатуры данных в массив, состоящий из 8 элементов типа NOTE; записи должны быть размещены по алфавиту;
–вывод на экран информации о людях,чьи дни рождения приходятся на месяц, значение которого введено с клавиатуры;
–если таких нет, выдать на дисплей соответствующее сообщение.
Другие языки программирования и технологии
Программирование в Lazarus
Простая программа на плюсах с покомпонентным вводом массива с экрана, персональные данные вводятся необязательно по алфавиту (записи всё равно потом сортируются пузырьковой сортировкой):
#include <string>
#include <iomanip>
#include <iostream>
using namespace std;
struct NOTE {string surname, name;
unsigned long long phone, date[3]; };
void print(NOTE x)
{
cout << "name: " << x.surname << ' '
<< x.name << endl << "phone: " <<
x.phone << endl << "date:" << setw(6) <<
x.date[0] << setw(3) << x.date[1]
<< setw(3) << x.date[2] << endl;
}
int main()
{
int i, j, month;
NOTE person[8];
for (i = 0; i < 8; i++)
{
cout << i + 1 << ") ";
cin >> person[i].surname >> person[i].name
>> person[i].phone >> person[i].date[0] >>
person[i].date[1] >> person[i].date[2];
}
for (i = 1; i < 8; i++) for (j = 7; j >= i; j--)
if (person[j - 1].surname > person[j]. surname)
swap(person[j - 1], person[j]);
cout << "month: ";
cin >> month;
j = 1;
for (i = 0; i < 8; i++)
if (person[i].date[1] == month)
{
print(person[i]);
j = 0;
}
if (j) cout << "Nobody" << endl;
}
А на чём надо -на ФриПаскале? Что-то не хочется мне переписывать...
#include <string>
#include <iomanip>
#include <iostream>
using namespace std;
struct NOTE {string surname, name;
unsigned long long phone, date[3]; };
void print(NOTE x)
{
cout << "name: " << x.surname << ' '
<< x.name << endl << "phone: " <<
x.phone << endl << "date:" << setw(6) <<
x.date[0] << setw(3) << x.date[1]
<< setw(3) << x.date[2] << endl;
}
int main()
{
int i, j, month;
NOTE person[8];
for (i = 0; i < 8; i++)
{
cout << i + 1 << ") ";
cin >> person[i].surname >> person[i].name
>> person[i].phone >> person[i].date[0] >>
person[i].date[1] >> person[i].date[2];
}
for (i = 1; i < 8; i++) for (j = 7; j >= i; j--)
if (person[j - 1].surname > person[j]. surname)
swap(person[j - 1], person[j]);
cout << "month: ";
cin >> month;
j = 1;
for (i = 0; i < 8; i++)
if (person[i].date[1] == month)
{
print(person[i]);
j = 0;
}
if (j) cout << "Nobody" << endl;
}
А на чём надо -на ФриПаскале? Что-то не хочется мне переписывать...
Пиши тоже самое только на фриланс, здесь за тебя не будут делать, здесь помогаю, а не делают
Похожие вопросы
- Помогите сделать программкупо возможности в basic ну или pascal (lazarus, delphy)
- Конец объектно-ориентированному программированию? Переходим от “черных” ящиков к ”белым” и ”прозрачным” ящикам?
- А какие языки программирования изучали в 80х и на чём вы их изучали?
- ОК. Куда, мать его, поступать-то? Или как я стал ненавидеть программирование
- Основы для программирования
- Вопрос для тех, кто уже опытный и профессиональный специалист в сфере программирования, web-программирования, дизайн!..
- Какова стоимость? Какова стоимость Borland Delphi 7? И что лучше delphi или lazarus? И почему?
- В чем преимущества LAZARUS по сравнению с DELPHI???
- Lazarus. В Компиляция внутри exe
- Web программирование