Составить блок-схему по коду(с++) или по условию. ХЕЛПаните Описать структуру с именем Aeroflot, содержащую следующие поля: dest – название пункта назначения рейса, number – номер рейса, type – тип самолета. Написать программу, выполняющую ввод с клавиатуры данных в массив Aeroport, состоящий из 7 структур типа Aeroflot. Записи должны быть упорядочены по возрастанию номера рейса. Вывести на экран номера рейсов и типы самолетов, вылетающих в пункт назначения, название которого совпало с названием, введённым с клавиатуры. Если таких рейсов нет, то вывести соответствующее сообщение.
#include
using namespace std;
struct Aeroflot
{
char punkt_naznachenia[40];
int nomer_reisa;
char tip_samoleta[20];
};
int main() {
Aeroflot as[7];
int i = 0, kol = 7;
for (i = 0; i < kol; i++) {
cout « i + 1 « "-aya zapis " « endl;
cout « "Vvedite nazvanie punkta naznachenia reisa(ne bolee 40 simvolov) " « endl;
cin » as[i].punkt_naznachenia;
cout « "Vvedite nomer reisa " « endl;
cin » as[i].nomer_reisa;
cout « "Vvedite tip samoleta(ne bolee 20 simvolov) " « endl;
cin » as[i].tip_samoleta;
}
int temp;
for (i = 0; i < kol; i++) {
if (as[i].nomer_reisa > as[i + 1].nomer_reisa) { temp = as[i].nomer_reisa; as[i].nomer_reisa = as[i + 1].nomer_reisa; as[i].nomer_reisa = as[i + 1].nomer_reisa = temp; continue; }
cout « "Vivod zapisey " « endl;
for (i = 0; i < kol; i++) {
cout « as[i].punkt_naznachenia « " ";
cout « as[i].nomer_reisa « " ";
cout « as[i].tip_samoleta « endl;
}
char poisk_samoletov[40];
cout « "Punkt naznachenia reisa " « endl;
cin » poisk_samoletov;
bool f = false;
for (i = 0; i < kol; i++)
if (strcmp(as[i].punkt_naznachenia, poisk_samoletov) == 0)
{
cout « "Nomer reisa ";
cout « as[i].nomer_reisa « endl;
cout « "Tip samoleta ";
cout « as[i].tip_samoleta « endl;
f = true;
}
if (!f) {
cout « "Net takogo punkta naznachenia reisa " « endl;
}
system("pause");
}
return 0;
}
Слово «робот» было придумано чешским писателем Карелом Чапеком и его братом Йозефом и впервые использовано в пьесе Чапека «Р. У. Р.» («Россумские универсальные роботы», 1920). Вот как сам Карел Чапек это описывает: «…в один прекрасный день …автору пришёл в голову сюжет …пьесы. И пока железо было горячо, он прибежал с новой идеей к своему брату Йозефу, художнику, который в это время стоял у мольберта… Автор изложил сюжет так коротко, как только мог… „Но я не знаю, — сказал автор, — как мне этих искусственных рабочих назвать. Я бы назвал их лаборжи [ по-видимому, от английского слова labour — П. Б. ], но мне кажется, что это слишком книжно“. „Так назови их роботами“, пробормотал художник, …продолжая грунтовать холст…»[3] В ранних русских переводах использовалось слово «работарь»[4][5].
#include
#include
#include
#include
#include
#include
typedef struct
{
char imya[40];
char familiya[40];
char otchestvo[40];
int telefon;
int texpasport;
float pages ;
}gor;
void form(char mass[10], char *imya, char *familiya, char *otchestvo, int telefon, int texpasport)
{
file *f;
gor y;
int i;
if ((f=fopen(mass,"w"))==null) exit(1);
for (i=1; i< =3; i++)
{
cout< < "vvedite imya: ";
cin> > imya;
cout< < "vvedite familiya: ";
cin> > familiya;
cout< < "vvedite otchestvo: ";
cin> > otchestvo;
cout< < "vvedite telefon: ";
cin> > telefon;
cout< < "vvedite texpasport: ";
cin> > texpasport;
fwrite(& y,sizeof(gor),1,f);
if(ferror(f)! =null)
exit(2);
}
fclose(f);
}
void vivod(char mass[50])
{
file *f;
gor z;
if ((f=fopen(mass, "r"))==null) exit(3);
cout< < "fail: "<
while (! feof(f)) {
fread (& z,sizeof(gor),1,f);
if (! feof(f))
{
cout< < "imya: "<
cout< < "familiya: "<
cout< < "otchestvo: "<
cout< < "telefon: "<
cout< < "texpasport: "<
}
fclose(f);
}
}
void del(char fo[10], char fi[10])
{
file *f1,*f2;
gor d;
//char temp[40];
if ((f1=fopen(fi,"r"))==null) exit(4);
if ((f2=fopen(fo,"w"))==null) exit(5);
//cout < < "vvedite nazvanie na ydalenie - ";
//cin > > temp;
for (int i=0; i< 3; i++)
{
fread(& d,sizeof(gor),1,f1);
if (feof(f1)) break;
if (i> 2)
fwrite (& d,sizeof(gor),1,f2);
}
fclose(f2);
fclose(f1);
}
void dobav(char fi[10], char fo[10],char *imya, char *familiya, char *otchestvo, int telefon, int texpasport)
{
int q;
int i;
gor d;
file *f1,*f2;
char temp[40];
if ((f1=fopen(fi, "r"))==null) exit(4);
if ((f2=fopen(fo,"r+"))==null) exit(5);
cout < < "vvedite familiu, pered kotorym nuzno dobavit element: ";
cin > > temp;
for (i=0; i< 10; i++)
{
fread(& d,sizeof(gor),1,f2);
if (feof(f2)) break;
if (strcmp(d.familiya, temp)) break;
q=i;
}
for (i=0; i< 10; i++)
{
if (feof(f2)) break;
fwrite (& d,sizeof(gor),1,f2);
if (i==q-1)
{
cout< < "vvedite imya: ";
cin> > imya;
cout< < "vvedite familiya: ";
cin> > familiya;
cout< < "vvedite otchestvo: ";
cin> > otchestvo;
cout< < "vvedite telefon: ";
cin> > telefon;
cout< < "vvedite texpasport: ";
cin> > texpasport;
cout <
}
}
fclose(f2);
fclose(f1);
}
void main()
{
int n=10;
//cout < < "vvedite kol-vo zapisey: - ";
//cin> > n;
//cout <
form("f1.txt",n);
vivod("f1.txt");
del("f1.txt","f2.txt");
cout < < "posle udalenia: \n";
vivod("f2.txt");
getch();
n=1;
system("cls");
dobav ("f2.txt","f2.txt");
cout < < "posle dobavlenia: \n";
vivod ("f2.txt");
getch();
}