- •1. ЦЕЛЬ РАБОТЫ
- •2. КРАТКОЕ ОПИСАНИЕ СРЕДЫ Visual C++
- •3. СОЗДАНИЕ КОНСОЛЬНОГО ПРИЛОЖЕНИЯ
- •4. ОФОРМЛЕНИЕ ПРОГРАММ
- •5. ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ
- •6. ИНСТРУКЦИЯ ПРИСВАИВАНИЯ
- •7. ВЫВОД ДАННЫХ
- •8. ВВОД ДАННЫХ
- •9. ПРОГРАММЫ С ЛИНЕЙНОЙ СТРУКТУРОЙ
- •10. БИБЛИОТЕКА МАТЕМАТИЧЕСКИХ ФУНКЦИЙ
- •11. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ
- •1. ЦЕЛЬ РАБОТЫ
- •2. ОПЕРАТОРЫ ВЕТВЛЕНИЯ
- •3. ОПЕРАТОРЫ ЦИКЛА
- •4. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ
- •1. ЦЕЛЬ РАБОТЫ
- •2. МАССИВЫ
- •3. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ
- •1. ЦЕЛЬ РАБОТЫ
- •2. МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ
- •3. ОБЪЯВЛЕНИЕ И ОПРЕДЕЛЕНИЕ ФУНКЦИЙ
- •4. ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
- •5. ПАРАМЕТРЫ ФУНКЦИИ И ОБРАЩЕНИЕ К ФУНКЦИИ
- •6. ОСОБЕННОСТИ РАБОТЫ В СРЕДЕ VISUAL C++
- •7. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ
- •СПИСОК ЛИТЕРАТУРЫ
6. ОСОБЕННОСТИ РАБОТЫ В СРЕДЕ VISUAL C++
Работая со средой Visual C++ вы обратили внимание, что программы, созданные в консольном приложении Win32 Console Application, после компиляции и запуска на выполнение вместо текста на русском языке выдают набор каких-то странных символов. Это объясняется следующим образом. В старой операционной системе MS DOS для кодировки символов используется стандарт ASCII, являющийся международным только в первой половине кодов (от 0 до 127), вторая половина кодов (от 128 до 255) является национальной и различна для разных стран. Например, в России для второй половины таблицы ASCII используется так называемая «альтернативная кодировка ГОСТа».
ВWindows же используется стандарт ANSI, в первой половине совпадающий с ASCII,
аво второй половине отличающийся от его российского варианта. Разработчики среды Visual C++ решили, что режим консольных приложений должен как бы имитировать работу в среде MS DOS, поэтому ввод-вывод выполняется в этом режиме в кодировке ASCII. В то же время в текстовом редакторе Visual C++, как и во всех Windows-приложениях, используется кодировка ANSI. Поэтому тексты на русском языке в программах, созданных в консольном приложении Win32 Console Application среды Visual C++, не воспроизводятся.
Выходом из данной ситуации является использование функции CharToOem() для преобразования символов из кодировки ANSI в кодировку ASCII и функцию OemToChar() для обратного преобразования. Первая из названных функций нужна для вывода русскоязычного текста на экран, а вторая – для ввода такого текста с клавиатуры. Для использования обеих функций необходимо подключить заголовочный файл <windows.h>, который не предусмотрен стандартом языка С++.
Пример 7. Вывод русскоязычного текста на экран в среде Visual C++.
#include<iostream.h>
#include<windows.h> char* Rus(const char* text); int main()
{cout<<endl<<Rus("Здравствуй, мир!")<<endl; return 0;}
char bufRus[256];
char* Rus(const char* text)
{ CharToOem(text, bufRus); return bufRus;}
Приступая к решению задач этого раздела, следует помнить, что:
для передачи данных в функцию надо использовать только параметры. Глобальные переменные, т.е. переменные, объявленные вне функции, использовать не рекомендуется;
тип каждого фактического параметра (константы или переменной) в инструкции вызова функции должен совпадать с типом соответствующего формального параметра, указанного в объявлении функции;
если параметр функции используется для возврата результата, то в объявлении функции этот параметр должен быть ссылкой, а в инструкции вызова функции в качестве фактического параметра должен быть указан адрес переменной.
41
7.ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОГО ВЫПОЛНЕНИЯ
1.Написать программу, которая с помощью функции вычисляет сопротивление электрической цепи, состоящей из двух резисторов. Параметрами функции являются величины сопротивлений и тип соединения (последовательное или параллельное). Функция должна проверять корректность параметров: если неверно указан тип соединения, то функция должна возвращать –1.
2.Написать программу, которая с помощью функции вычисляет значение a b . Числа a и b могут быть любыми дробными положительными числами.
3.Написать программу, которая с помощью функции вычисляет объем (V abc ) и
площадь поверхности ( S 2(ab bc ca) ) параллелепипеда.
4. Написать программу, которая с помощью функции Dohod вычисляет доход по вкладу. Исходными данными для функции являются: величина вклада, процентная ставка
(годовых) и срок вклада (количество дней). |
|
|
|
|
|
|||
5. |
Написать |
программу, |
которая |
вычисляет |
с |
помощью |
функции |
выражение |
y x 2 |
1 в указанном диапазоне с заданным шагом и печатает таблицу значений y . |
|||||||
6. |
Написать |
программу, |
которая |
вычисляет |
с |
помощью |
функции |
выражение |
y sin2 x cos(x 1) в указанном диапазоне с заданным шагом и печатает таблицу
значений y . |
|
|
|
|
|
|
|
|||
|
7. |
Написать |
программу, |
которая |
вычисляет |
с помощью |
функции |
выражение |
||
y x2 sin2 |
x 1 в указанном диапазоне с заданным шагом и печатает таблицу значений |
|||||||||
y. |
8. |
Написать |
программу, |
которая |
вычисляет |
с помощью |
функции |
выражение |
||
|
||||||||||
y |
sin x |
, |
в указанном диапазоне с заданным шагом и печатает таблицу значений y . |
|||||||
|
||||||||||
|
x2 9 |
|
|
|
|
|
|
|
9.Написать функцию, которая сравнивает два целых числа и возвращает результат сравнения в виде одного из знаков : > , < , = .
10.Написать функцию, которая возвращает максимальное число из двух целых чисел, полученных в качестве аргумента.
11.Написать функцию, которая возвращает минимальное число из двух целых чисел, полученных в качестве аргумента.
12.Написать программу, которая вычисляет значение F с использованием функции
F ax2 bx c при |
x 2 и |
b 0. |
13.Написать программу, которая вычисляет значение F с использованием функции
F |
x a |
при |
x c . |
|
||
x c |
|
|||||
|
|
|
|
|
||
14. Написать программу, которая вычисляет значение F с использованием функции |
||||||
F ax2 |
bx c |
при |
a 2 или |
b 6. |
||
15. Написать программу, которая вычисляет значение F с использованием функции |
||||||
F |
x2 |
12 |
при |
x2 12 . |
|
42