- •Языки программирования
- •Санкт-Петербург
- •1. Общие положения по организации
- •2. Блок лабораторных работ №1 по теме «Представление управляющих структур программирования
- •2.1. TPlab1_1 «Структура ветвления с двойным
- •2.2. TPlab1_2 «Структура ветвления с множественным
- •2.3. TPlab1_3 «Структура повторения с
- •Int kol, //счетчик введенных оценок
- •2.4. TPlab1_4 «Структура повторения с предусловием
- •Int kol, //счетчик введенных оценок
- •2.5. TPlab1_5 «Структура повторения for»
- •Int god; //число лет
- •2.6. TPlab1_6 «Структура повторения с постусловием
- •Int kol, f, ocenka;
- •2.7. TPlab1_7 «Вложенные управляющие структуры»
- •3. Блок лабораторных работ №2 по темам
- •3.1. TPlab2_1 «Функции, определяемые программистом»
- •3.2. TPlab2_2 «Рекурсивные алгоритмы»
- •Int fact(int);
- •Int fact(int n)
- •3.3. TPlab2_3 «Массивы и функции»
- •Void vvod1(int n, char m1[][20]);
- •Void vvod2(int n, float m2[]);
- •Void vyvod(int n, char m1[][20], float m2[]);
- •3.4. TPlab2_4 «Типовые операции над массивами»
- •Void vvod();
- •Void vyvod();
- •4.2. TPlab3_2 «Создание файла прямого доступа»
- •Int nomer;
- •If(!outf)
- •4.3. TPlab3_3 «Запись в файл прямого доступа»
- •Int nomer;
- •If(!outf)
- •4.4. TPlab3_4 «Чтение из файла прямого доступа»
- •5. Индивидуальное задание по теме «Технология процедурного программирования»
- •Vyvod(outprintf, client);
- •Vyvod(cout, client);
- •Void dobzap(fstream &dobf)
- •Дополнительная литература:
Void vvod();
Void vyvod();
char menu();
Добавить в файл кодов TPlab3_1.cpp подключение файла заголовков и текст функции main():
//файл кодов TPlab3_1.cpp
#include "stdafx.h"
#include "TPlab3_1.h"
trab zap;
int _tmain(int argc, _TCHAR* argv[])
{
char selector;
do
{
selector=menu();
}
while(selector!='0');
return 0;
}
char menu()
{
char ch;
cout<<"\tMENU\n\n";
cout<<"\t1 Vvod dannyx"<<endl;
cout<<"\t2 Vyvod rezultatov"<<endl;
cout<<"\t0 Vyxod"<<endl;
cout<<"\tVash vybor: ";
cin>>ch;
switch(ch)
{
case '1':
vvod();
break;
case '2':
vyvod();
break;
case '0': break;
}
return (ch);
}
void vvod()
{
char ch;
ofstream f("rab.dat", ios::out|ios::binary);
do
{
cout<<"Tab. nomer: ";
cin>>zap.tabn;
cout<<"Fio: ";
cin>>zap.fio;
cout<<"Zarplata: ";
cin>>zap.zarp;
f.write((char*)&zap, sizeof(zap));
cout<<"Prodolg-<1>,Otkaz-<0>: ";
cin>>ch;
}
while(ch=='1');
f.close();
return;
}
void vyvod()
{
char ch;
float min;
ifstream f("rab.dat",ios::in|ios::binary);
cout<<"Minimum: ";
cin>>min;
f.read((char*)&zap,sizeof(zap));
while(!f.eof())
{
if(zap.zarp<min)
{
cout<<"Tab. nomer: "<<zap.tabn<<endl;
cout<<"Fio: "<<zap.fio<<endl;
cout<<"Zarplata: "<<zap.zarp<<endl;
}
f.read((char*)&zap, sizeof(zap));
}
f.close();
return;
}
Компиляция, запуск и тестирование приложения
Выбрать команду Build->Build TPlab3_1. Выполняется компиляция и компоновка программы. Выбрать команду Debug ® Start Without Debugging - запуск на выполнении программы.
4.2. TPlab3_2 «Создание файла прямого доступа»
Цель работы – изучение операции открытия и создания файла прямого доступа.
Условие задачи: имеются сведения о счетах клиентов банка: номер счета, фамилия, имя, баланс; создать файл прямого доступа с пустыми записями.
Создание проекта консольного приложения
Выполнить этапы согласно п. 2.1 и ввести имя проекта TPlab3_2.
Создается исходный файл TPlab3_2.cpp, который будет содержать всего одну пустую функцию main():
int t_main(int args, _TCHAR* argv[])
{return 0;}.
Создание и добавление исходных файлов в проект
Проект должен содержать файл заголовков TPlab3_2.h и файл кодов TPlab3_2.cpp.
Создать файл TPlab3_2.h, ввести текст файла и сохранить его:
//файл заголовков TPlab3_2.h
#ifndef client_h
#define client_h
#include <iostream>
using std::cout;
using std::cin;
using std::cerr;
using std::endl;
using std::ios;
#include <fstream>
using std::ofstream;
using std::ifstream;
struct tip_client
{
Int nomer;
char fam[15];
char im[10];
float balance;
};
#endif
Добавить в файл кодов TPlab3_2.cpp подключение файла заголовков и текст функции main():
//файл кодов TPlab3_2.cpp
#include "stdafx.h"
#include "TPlab3_2.h"
int _tmain(int argc, _TCHAR* argv[])
{
ofstream outf("client.dat",ios::binary);
If(!outf)
{
cerr<<"File ne otkr"<<endl;
exit(1);
}
tip_client client0={0, "", "", 0.0};
for(int i=0; i<10; i++)
outf.write((char *) &client0, sizeof(tip_client));
return 0;
}
Компиляция, запуск и тестирование приложения
Выбрать команду Build->Build TPlab3_2. Выполняется компиляция и компоновка программы. Выбрать команду Debug ® Start Without Debugging - запуск на выполнении программы.