- •Лабораторная работа №1 Программирование алгоритмов линейной и разветвляющейся структуры. Организация циклов в программе. Составление выражений
- •Задание №1
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Задание №2
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Лабораторная работа №2 Работа с массивами. Одномерные статические массивы. Многомерные динамические массивы
- •Задание №1
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Задание №2
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Задание №3
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Лабораторная работа №3 Работа со строками. Динамические одномерные массивы
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Лабораторная работа №4 Работа со структурами. Вложенные структуры. Массивы структур Задание 1
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Задание 2
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •6 Лабораторная работа №5 Программирование и использование функций
- •Void main()
- •Void main()
- •Лабораторная работа №6 Работа с файлами
- •Void main()
- •Void main()
- •Void main()
Void main()
{
setlocale(LC_ALL,"Russian");
struct vyp{//вложенная структура выпуск
int god;//год выпуска
char firm[10];//фирма-производитель
};
struct album{//структура муз. альбом
char name[20];//название
int kol;//кол-во песен
struct vyp vyp1;//влож. выпуск
};
struct album album1;//структура
struct album *ptr_album1;//указатель
ptr_album1=&album1;
//ввод данных
cout<<"Введите название: ";
cin>>ptr_album1->name;
cout<<"Введите кол-во песен: ";
cin>>album1.kol;
cout<<"Введите год выпуска: ";
cin>>album1.vyp1.god;
cout<<"Введите фирму-производитель: ";
cin>>album1.vyp1.firm;
//вывод данных
cout<<"Муз. альбом: "<<ptr_album1->name<<"\t"<<album1.kol<<"\t"<<album1.vyp1.god<<"\t"<<album1.vyp1.firm<<endl;
}
Задание 2
Используя выполненное задание 1, сформировать в программе одномерный массив структур, организовать заполнение элементов массива с клавиатуры, при этом вести диалог с пользователем о необходимости продолжать ввод. После заполнения массива структур упорядочить его по заданному полю. Например, упорядочить государства по численности населения или в алфавитном порядке.
''Человек'': фамилия; дата рождения (месяц, число); возраст.
#include "stdafx.h"//директивы
#include <iostream>
#include <locale>
using namespace std;
Void main()
{
setlocale(LC_ALL,"Russian");
const int n=100;//размерность массива
int k=n;//кол-во введенных данных
//структура
struct Data{//вложенная структура дата рождения
int ch;//число
char month[10];//месяц
};
struct Chel{//структура Человек
char name[20];//фамилия
int vozr;//возраст
struct Data data1;//влож. дата рождения
};
struct Chel mas[n];//массив структур
for (int i=0;i<n;i++){//заполнение
cout<<"Введите фамилию: ";
cin>>mas[i].name;
cout<<"Введите возраст: ";
cin>>mas[i].vozr;
cout<<"Введите число рождения: ";
cin>>mas[i].data1.ch;
cout<<"Введите месяц рождения: ";
cin>>mas[i].data1.month;
cout<<"Продолжить ввод? y- да, n-нет. ";
char x;
cin>>x;
if (x=='n'){
k=i+1;
break;
}
else;
}
for (int i=0;i<k;i++)//вывод
cout<<mas[i].name<<"\t"<<mas[i].vozr<<" лет"<<"\t"<<mas[i].data1.ch<<"\t"<<mas[i].data1.month<<endl;
struct Chel temp;//временная структура
char l;
cout<<"Выберите поле для сортировки: 1 - фамилия, 2 - возраст: ";//диалог с пользователем
cin>>l;
if (l=='1'){//сортировка по имени
for (int i=0;i<k-1;i++)
for (int j=0;j<k-i-1;j++)
if (strcmp(mas[j].name,mas[j+1].name)>0){
temp=mas[j];
mas[j]=mas[j+1];
mas[j+1]=temp;
}
cout<<"После сортировки: "<<endl;//вывод
for (int i=0;i<k;i++)
cout<<mas[i].name<<"\t"<<mas[i].vozr<<" лет"<<"\t"<<mas[i].data1.ch<<"\t"<<mas[i].data1.month<<endl;
}
if (l=='2'){//сортировка по возрасту
for (int i=0;i<k-1;i++)
for (int j=0;j<k-i-1;j++)
if (mas[j].vozr>mas[j+1].vozr){
temp=mas[j];
mas[j]=mas[j+1];
mas[j+1]=temp;
}
cout<<"После сортировки: "<<endl;//вывод
for (int i=0;i<k;i++)
cout<<mas[i].name<<"\t"<<mas[i].vozr<<" лет"<<"\t"<<mas[i].data1.ch<<"\t"<<mas[i].data1.month<<endl;
}
else;
}
''Студент'': фамилия; группа; дата рождения (месяц, число).
#include "stdafx.h"//директивы
#include <iostream>
#include <locale>
using namespace std;