Главная страница

Шафеева практика С. Практикум по программированию на языке с методические указания к лабораторным работам Омск 2008 2


Скачать 1.01 Mb.
НазваниеПрактикум по программированию на языке с методические указания к лабораторным работам Омск 2008 2
АнкорШафеева практика С.pdf
Дата06.04.2018
Размер1.01 Mb.
Формат файлаpdf
Имя файлаШафеева практика С.pdf
ТипПрактикум
#17709
КатегорияИнформатика. Вычислительная техника
страница6 из 7
1   2   3   4   5   6   7

ЗАДАНИЕ К РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЕ
Разработать схему алгоритма, написать и отладить программу для расчета и построения графиков двух функций (результаты расчетов должны храниться в виде массивов и распечатываться в виде таблицы)

54
[5] необходимо выделить наибольшее и наименьшее значения для каждой из функций. Добавить в нее решение нелинейного уравнения и вычисления приближенного значения определенного интеграла по заданию преподавателя.
Разработать программу нахождения корней уравнения f(x)=0 на интер- вале [a,b] с точностью e=0.001 (интервал подобрать или рассчитать само- стоятельно). При реализации можно использовать метод половинного деле- ния (бисекции) или метод хорд [9]:
1. x - 2e
-x
-
x
= 0.
2. x
2
- ln(x+1) + sin x -2 = 0.
3. 5x - e x
-2x
x
= 0. 4. 2x lg x - 3 = 0.
5. 2
x
- 3x - 2 = 0. 6. 0,5 + cos x - 2x sin x = 0.
7. sin x + x - 3 = 0. 8. x e x
– 2 x
2
- 1 = 0.
9.
3)
ln(x2

+ 2x - 3 = 0.
10. 2 ln(x+1) - x + 1 = 0.
11. tg x - e x+1
= 0. 12. 2 ln(x+1) + arctg x -3 = 0.
13. x
3
- 2x
2
- 4 = 0. 14. 5x
2
- 2x ln x-7 = 0.
15. 2 3
1
x
2

- 3 sin x = 5. 16. 2x
3
- 3x
2
- 4 = 0.
17. 4x - sin2x -3 = 0. 18. 2x sin
2 x-3
cosx x

= 0.
19. 2 ln(x+1)-3 sin2x = 4. 20. x
3
+ 3x
+
2 = 0.
Разработать программу для вычисления значения определенного ин- теграла на интервале [a,b] (a, b подобрать самостоятельно) численными методами прямоугольников и трапеций [9] для следующих вариантов:
1.
dx
x
b
a


3 1
2.


b
a
dx
x
3 2
3.


b
a
dx
x
)
2
(
1 3
4.


b
a
x
dx
e
x
2 5.
tgdx
x
b
a

2 6.


b
a
dx
x
)
1
(
cos
2 7.
dx
xe
x
b
a

cos
8.
dx
x
x
b
a

ln
2 9.



b
a
dx
x
x
)
1
(
)
1
lg(
2 10.
dx
x
e
b
a
x



)
1
ln(
11.
xdx
e
b
a
x
2
sin
2

12.


b
a
dx
x
x
)
1
(
sin
3

55 13.
dx
e
e
b
a
x
x



)
(
14.
dx
x
arctg
x
b
a
)
(
2

15.


a
b
dx
x
x
x
)
cos
(sin cos
16.
dx
x
x
b
a
)
sin(

17.

b
a
dx
x
x
arctg
)
(
2 18.



b
a
dx
x
x
)
1
(
)
1
ln(
2 19.


b
a
dx
x )
)
ln(
1
(
1 20. dx
)
x cos x
(
1
b a


Интервал интегрирования разбить равномерно на N>50 частей.
Библиографический список
1.
Березин, Б.И. Начальный курс Си и С++ / Б.И. Березин, С.И. Бере- зин. – М.: Диалог-МИФИ, 1996. – 288 с.
2.
ГОСТ 19.701-90. ЕСПД. Схемы алгоритмов, пpогpамм, данных и систем. – М.: Изд-во стандартов, 1991. – 26 с.
3.
Кpячков, А.В. и дp. Пpогpаммиpование на С и С++. Практикум. /
А.В. Кpячков и дp. – М.: Радио и связь, 1997. – 344 с.
4.
Макогон, В.С. Язык программирования Си для начинающих / В.С.
Макогон. – Одесса: НПФ "АСТРОПРИНТ", 1993. – 96 с.
5.
Методы проектирования программ: Метод. указания / Сост. О. П.
Шафеева. –Омск: Изд-во ОмГТУ, 2004. – 32 с.
6.
Павловская, Т.А. С/С++. Программирование на языке высокого уровня / Т.А. Павловская. – СП-б: Питер, 2002. – 462 с.
7.
Подбельский, В.В. Программирование на языке Си / В.В. Подбель- ский, С.С. Фомин. – М.: 2000 – 600 с.
8.
Флоренсов, А.Н. Введение в программирование. Семантический подход: учеб. пособие / А.Н. Флоренсов. – Омск: Изд-во ОмГТУ, 1998. – 220 с.
9.
Численные методы: Метод. указания. / Сост.: О. Б. Малков, Е. Т.
Гегечкори. – Омск: Изд-во ОмГТУ, 1995. – 28 с.
10.
Шафеева, О.П. Технологии программирования. С++: учеб. посо- бие / О.П. Шафеева. – Омск: Изд-во ОмГТУ, 2007. – 80 с.
11.
Шилд, Г. Справочник программиста по С/С++. Учеб. Пособие / Г.
Шилд – М.: Издательский дом «Вильямс», 2000. – 448 с.

56
Приложение А
Г л а в н о е м е н ю
File
Edit
Search
Run Compile
(Alt+F)
(Alt+E)
(Alt+S)
(Alt+R) (Alt+C)
Файл
Редактор
Поиск
Выполнение Компиляция
NEW
Создать новый файл
OPEN
F3
Открыть файл
SAVE F2
Сохранить файл
SAVE as...
Сохранить под име- нем …
SAVE ALL
Сохранить все
__________
CHANGE
DIR
Смена каталога
PRINT
Распечатать
DOS
SHELL
Выход в DOS
DOS QUIT
ALT+X
UNDO
Alt+BkSp
Удалить изменения
REDO
Восстановить изменения
_____________
CUT Shift-Del
Убрать фрагмент в буфер
COPY Ctrl-Ins
Копировать в буфер
PASTE
Shift-Ins
Вставить из буфера
CLEAR
Ctrl-Del
Удалить фрагмент
COPY
EXAMPLE
Копировать пример
SHAW
CLIPBOARD
Открыть окно буфера
FIND
Найти фрагмент
REPLACE
Заменить фрагмент
SEARCH
AGAIN
Повторить поиск
Ctrl+F2
__________
GO TO LINE
NUMBER
Перейти к строке с номером
PREVIOUS
ERROR
Предыдущая ошибка
NEXT
ERROR
Следующая ошибка
LOCATE
FUNCTION
Разместить функцию
RUN Ctrl-F9
Запуск на выполнение
PROGRAM
RESET
Ctrl-F2
Перезапуск программы
GO TO
CURSOR F4
Выполнение до курсора
TRACE INTO
F7
Трассировка с заходом в п/п
STEP OVER
F8
Выполнение по строкам без захода в п/п
ARGU-
MENTS
Аргументы
COMPILE
Alt-F9
Компиляция файла из окна
MAKE F9
Условная рекомпиляция
LINK Компо- новать
____________
BUILD ALL
Безусловная рекомпиляция всей програм- мы
INFORMA-
TION
Информация
REMOVE
MESSAGE
Убрать отчет об ошибках

57
с р е д ы Турбо Cu
Debug
Alt+D
Отладка
INSPECT наблюдать
ALT+F4
EVALU-
ATE/
MODIFY
Ctrl-F4
Вычислить/ изменить
CALL
STACK
Ctrl-F3
Oкнo под- программы
WATCHES
Параметры
TOGGLE
BREAK-
POINT
Обозначить точку пре- рывания
Ctrl+F8
BREAK-
POINTS
Точки прерывания
Project
проектирова ние
(ALT+P)
OPEN
PROJECT
Открыть проект
CLOSE
PROJECT
Закрыть проект
ADD ITEM
Добавить пункт
DELETE
ITEM
Удалить пункт
LOCAL
OPTOIN
Отдельные опции
INCLUDE
FILES
Включить в программу файлы
Options
Alt+O
Параметры
APPLICA-
TION
Приложение
COMPILER
Параметры
TRANSFER
Переместиться в выбранное
MAKE
Выполнить выбранные действия
LINKER
Параметры компоновщи- ка
LIBRARIAN
Библиотечные параметры
DEBUGGER
Отладчик
DIRECTO-
RIES
Каталоги EN-
VIRONMENT
Условия работы
SAVE
Сохранение параметров
Window
Alt+W
Окна
SIZE/MOVE
Ctrl +F5
Перемещение, изменение размеров
ZOOM F5
Раскрыть на экран
CASCADE
Окна каскадом
TILE
Непересека- ющиеся
NEXT F6
Следующее
CLOSE
Alt-F3 За- крыть текущее
CLOSE ALL
Закрыть все окна
MESSAGE
Окно сообщений
OUTPUT
Окно результата
WATCH
Окно отладки
USER
SCREEN
Пользов. экран
PROJECT
Окно проекта
LIST ALL
Список всех окон
Help
Alt+H
Помощь
CON-
TENTS
Содержа- ние
INDEX
Ключевые слова
Shift+F1
TOPIC
SEARCN
Поиск темы
Ctrl+F1
PREVIOUS
TOPIC
Предыду- щая тема
Alt+F1
Help
on
Help
Справка о пользователе
ACTIVE
FILE
Действую- щий файл помощи
ABOUT
Версия языка

58
Приложение Б
Операции языка С/С++
Вес Знак
Наименование операции
Тип операции
Порядок
1
( )
[]
-> вызов функции выделение элемента массива выделение элемента структуры или объединения выделение элемента структуры или объединения (объединения), адресуемой (го) указателем
Выражение Слева направо
2
!


-
++
--
&
*
(тип) sizeof логическое отрицание побитовое отрицание изменение знака (унарный минус) увеличение на 1 (инкремент) уменьшение на 1 (декремент) определение адреса обращение по адресу преобразование типа определение размера в байтах унарные
Справа налево

3
*
/
% умножение деление остаток от деления бинарные арифмети- ческие
Слева направо
4
+
-
сложение вычитание бинарные арифмети- ческие
Слева направо

5
<<
>>
сдвиг влево сдвиг вправо сдвига
Слева направо
6
<
<=
>
>= меньше чем меньше или равно больше чем больше или равно отношенияСлева направо
7
==
!=
равно неравно отношенияСлева направо
8 & поразрядная операция "И"
побитовая

9 ^
«исключающее "ИЛИ"»
побитовая

10
|
поразрядная "ИЛИ"
побитовая

11
&&
логическая операция "И" логическая

12 ||
логическая операция "ИЛИ"
логическая

13
? :
условная операция тернарная


59 14
=
+=
-=
*=
/=
%=
<<=
>>=
&=
|=
^=
простое присваивание
составные присваивания:
сложение с присваиванием вычитание с присваиванием умножение с присваиванием деление с присваиванием остаток от деления с присваиванием сдвиг двоичного числа влево с присваиванием сдвиг двоичного кода вправо с пр. побитовая операция "И" с присв. поразрядная операция "ИЛИ" c присваиванием исключающее "ИЛИ" с присваив. присваи- вания бинарные
(для дво- ичных операндов)
Справа налево
15
,
операция "запятая" (соединения)
тернарная

Приложение В
Типы данных

Обозначение Размер
(байт)
Диапазон
Тип данных
1 char, signed char
1
-128...127
Символьный со знаком
2 unsigned char
1 0...255
Символный без знака
3 short, short int, signed short , signed short int
2
-32768...
32767
Короткое целое со зна- ком
4 unsigned short, unsigned short int
2 0...65535
Короткое целое без зна- ка
5 int, signed, signed int
1, 2, 4 Зависит от реализации
Целое
6 unsigned, unsigned int
1, 2, 4
Зависит от реализации
Целое без знака
7 long, signed long, long int
4
-2147483648
…2147483647
Длинное целое со знаком
8 unsigned long
4 0...4294967295 Длинное целое без знака
9 float
8
-3.4e-38...
3.14e+38
Вещественное число с плавающей точкой
10 double
8
-1.7е-
308..1.7е308
Вещественное число уд- военной точности
11 long double
10
-3.4e-4932...
.4e4932
Длинное вещественное число удвоенной точности

60
Приложение Г
Обозначения графические в схемах алгоритмов (ГОСТ 19.701-90)
Символ Наименование
Назначение
Данные
Процесс
Предопреде- ленный про- цесс
Подготовка
Решение
Границы цикла
Соединитель
Терминатор
Основная линия
Комментарий
Определяет ввод или вывод на внешнее уст- ройство или любой носитель данных
Отражает обработку данных: выполнение от- дельной операции или группы операций
Отображает предопределѐнный процесс, со- стоящий из одной или нескольких операций программы, которые определены в другом мес- те (подпрограмме, модуле)
Отражает инициализацию и модификацию па- раметра для управления циклом со счѐтчиком
Описывает проверку условия и выполняет пе- реключение по одному из условий. Имеет один вход и два или более альтернативных выходов, один из которых активизируется после вычис- ления условия внутри символа
Состоит из двух частей: начала и конца цикла.
Обе части имеют один и тот же идентификатор.
Изменение значения идентификатора, условия для выполнения или завершения помещаются внутри символов в начале или в конце цикла
Используется для обрыва линии и продолжения еѐ в другом месте. Должен содержать уникаль- ное обозначение
Определяет начало и конец структурной схемы алгоритма программы или подпрограммы
Отображает последовательность выполнения действий в алгоритме
Используется для добавления пояснительных записей. Связывается с символом или группой символов, обведѐнных пунктиром

61
Приложение Д
Сообщения об ошибках
Сообщения об ошибках периода компиляции
"," expected (Нужно указать ",").
Array bounds missing "]" (Массив ограничивает отсутствие "]").
Array must have at least one element (Массив должен иметь по крайней мере один элемент).
Call of nonfunction (Нефункциональное обращение).
Call to function 'function' with no prototype (Обращение к функции "функ- ция" без прототипа).
Code has no effect (Код не имеет эффекта).
Compound statement missing "}" (Утверждение, пропускающее "}").
Declaration is not allowed here (Здесь не допускается объявление).
Declaration missing ";" (Отсутствие объявления ";").
Declaration syntax error (Синтаксическая ошибка, объявление переменной).
Declaration terminated incorrectly (Объявления, завершенные неправильно).
Delete array size missing "]" (Отсутствие скобки "]").
do-while statement missing ;OR For statement missing ; (Отсутствие ут- верждения do-while, или отсутствие утверждения For).
Expression syntax (Ошибка синтаксиса в выражении).
Extra parameter in call to function (Недопустимый параметр в обраще- нии к функции).
Function call missing ")" (В обращении к функции отсутствует ")").
Illegal initialization (Неверная инициализация).
Illegal character 'character' (Неверный символ " символ ").
Illegal structure operation (Неверная операция структуры).
Illegal use of pointer (Неверное использование указателя).
'identifier' cannot start a parameter declaration (Идентификатор не мо- жет начать объявление параметра).
'identifier' is assigned a value which is never used (Идентификатор опреде- ляет значение, которое ранее не использовалось).
Invalid indirection (Недопустимый ссылка).
Lvalue required (Требуется наименование выражения (адрес переменной)).
Member identifier expected (Ожидается значение идентификатора).
Multiple declaration for 'identifier' (Многократные объявления для иден- тификатора).
Must take address of a memory location (Необходимо взять адрес распо- ложения памяти).
Non-portable pointer conversion (Преобразования указателя не переносятся).
Not an allowed type (Недопустимый тип).
Operator "[]" missing "]" (Оператор "[]" не имеет "]").
Overlays only supported in medium, large, and huge memory models
(Оверлейные программы, поддерживаемые только в среде, большие и огромные модели памяти).

62
Parameter 'parameter' is never used (Параметр "параметр" ранее никогда не использовался).
Size of 'identifier' is unknown or zero (Размер идентификатора неизвестен или нуль).
Structure required on left side of . or .* (Ошибка структуры на левой сторо- не, или отсутствие "*").
Two consecutive dots (Наличие двух последовательных точек).
Too few parameters in call to 'function' (Несколько параметров в обраще- нии к "функции").
Too many initializers (Слишком много инициализаторов).
Too many error or warning messages (Слишком много ошибок или преду- преждений).
Type mismatch in parameter 'parameter' in call to 'function' (Несоответст- вие типов в параметре "параметр" при обращении к "функции").
Type mismatch in redeclaration of 'identifier' (Несоответствия типов в по- вторном определении идентификатора).
Value of type void is not allowed (Недопустимые значения типа).
1   2   3   4   5   6   7


написать администратору сайта