- •Отчет о практике
- •II Простые действия со строками, 12.
- •III Сложные действия со строками, 12.
- •Int main() {
- •IV Преобразование символов в числа, 12.
- •Int main() {
- •Функции
- •I Разработка нерекурсивных функций, 12.
- •Int main(){
- •II Разработка рекурсивных функций, возвращающих значение, 12.
- •Int main() {
- •III Разработка рекурсивных функций, не возвращающих значений, 12.
- •Int main() {
- •IV Механизм перегрузки функций, 12.
- •Int main() {
- •V Функции-шаблоны, 12.
- •Int main() {
- •Организация файлового ввода/вывода
- •I Работа с текстовыми файлами, 12.
- •Int main() {
- •II Работа с текстовыми файлами, 12.
- •Int main() {
- •III Работа с двоичными файлами, 12.
- •Int main() {
- •Структуры
- •I Использовать структуру point для хранения координат точки, 12.
- •Int main() {
- •II Использовать структуру, содержащую члены-данные и члены-функции, 12.
- •Int main() {
- •Сортировки
- •Int main() {
- •Int main() {
- •Класс-контейнер вектор
- •Int main() {
- •Int main() {
- •Исключения
- •Int main() {
- •Список использованных источников
Министерство образования и науки Российской Федерации
САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИМЕНИ Н.Г. ЧЕРНЫШЕВСКОГО
УТВЕРЖДАЮ
-
Зав. кафедрой к.ф.-м.н., доцент А.С.Иванов
подпись, дата
Отчет о практике
студента 1 курса 111 группы факультета КНиИТ
Кургачевой Алены Дмитриевны
________________________________________________________________________________________________ фамилия, имя, отчество
учебная вид практики
математической кибернетики и компьютерных наук кафедра
семестр 2
продолжительность две недели с 2.07.12 по 14.07.12 кол. недель сроки практики
Руководитель практики
Мещеряков Александр Викторович |
|
|
|
|
|
|
личная подпись, дата |
|
|
Содержание
1. Строки 3
2. Функции 11
3. Организация файлового ввода/вывода 22
4. Структуры 30
5. Сортировки 34
6. Класс-контейнер вектор 39
7. Исключения 42
Вывод 44
Список использованных источников 45
Строки
II Простые действия со строками, 12.
Даны целые положительные числа N1 и N2 и строки S1 и S2. Получить из этих строк новую строку, содержащую первые N1 символов строки S1 и последние N2 символов строки S2 (в указанном порядке).
Исходный код программы:
#include <iostream>
#include <string>
using namespace std;
int main() {
int n1, n2;
string s1, s2;
cin >> n1;
cin >> n2;
cin >> s1;
cin >> s2;
string si = s1.substr(0, n1);
string sj = s2.substr(s2.length() - n2, n2);
cout << si + sj << endl;
return 0;
}
Результат работы программы:
III Сложные действия со строками, 12.
Вывести все слова сообщения, которые содержат данную букву.
Исходный код программы:
#include <iostream>
#include <string>
using namespace std;
Int main() {
string s;
char symbol;
cin >> symbol;
getline(cin,s);
bool flag = false;
string ans = "";
s += " ";
for (int i = 0; i < s.size(); i++) {
if (s[i] == ' ') {
if (flag) {
cout << ans << endl;
}
flag = false;
ans = "";
}
else {
ans += s[i];
if (symbol == s[i]) {
flag = true;
}
}
} // for
return 0;
}
Результат работы программы:
IV Преобразование символов в числа, 12.
Дан текст. Определить, является ли он правильной десятичной записью целого числа.
Исходный код программы:
#include <iostream>
#include <string>
using namespace std;
Int main() {
string s;
getline(cin,s);
bool flag_do_tochky = true;
bool flag_ans = true;
for (int i = 0; i < s.size(); i++) {
if(isdigit(s[i])) {
continue;
}
if ((flag_do_tochky == true) && (s[i] == '.') && (s.size() - 1 != i)) {
flag_do_tochky = false;
}
else flag_ans = false;
}
cout << flag_ans << endl;
return 0;
}
Результат работы программы:
Функции
I Разработка нерекурсивных функций, 12.
Разработать функцию, которая для заданного натурального числа N возвращает сумму его делителей. С помощью данной функции для заданного числа A вывести на экран предшествующее по отношению к нему число, сумма делителей которого равна сумме делителей числа A.
Исходный код программы:
#include <iostream>
using namespace std;
int div_count(int n){
int ans = 0;
for(int i = 1; i < n / 2 + 1; i++){
if (n % i == 0) {
ans += i;
}
}
return ans;
}