Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР3-С++-13 марта-2012.doc
Скачиваний:
14
Добавлен:
15.09.2019
Размер:
1.26 Mб
Скачать

2.12.4.1. Текст программы

Полный текст программы приводится ниже.

/**************************************************/

/* Лабораторная работа № 3 */

/* Домашнее задание */

/* Арифметические выражения и функции */

/* Пример решения. Вариант № 30 */

/**************************************************/

#include <stdio.h>

#include <math.h>

# include<conio.h>

int main(void)

{

/* Параметры, которые вводятся */

double x,y;

/* Параметры, которые задаются в программе */

double pi=3/14159;

double b; /* результаты */

double z; /* рабочая переменная */

printf("Введите x, y >");

scanf("%lf %lf",&x,&y);

z=fabs(x*y-1);

b=pow(pi*tan(z), -sin(z));

printf("b = %lg\n",b);

getch();

return 0;

}

2.12.4.2. Результаты работы программы

Введите x, y >3.0 2.0

b = 0

3. Выводы

 Выполнение этой лабораторной работы должно познакомить Вас с алгоритмизацией вычислительных процессов и с базовыми типами вычислительных процессов (линейным, разветвляющимся и циклическим). Вы должны научиться: составлять простейшие алгоритмы линейных, разветвля­ющихся и циклических вычислительных процессов; выполнять математические операции в своих программах с использованием арифметических операторов языка C++; используя круглые скобки в арифметических выражениях, управлять порядком, в котором язык C++ выполняет операции; использовать побитовые операции языка C ++; использованию директив препроцессора.

Выполнение этой лабораторной работы позволит закрепить знания: по приоритету арифметических операция языка С++; по структуре программы на языке С++; выработать навыки программирование алгебраических выражений с использованием арифметических операций и стандартных математических функций,

4. Требование к отчету

В отчете должны быть отображены следующие пункты:

1. Название работы.

2. Цель работы.

3. Задание.

4. Таблицы соответствия переменных.

5. Краткое описание арифметических операций и приоритетов операций.

6. Краткое описание операций побитового сдвига.

6. Листинги всех программ задания.

7. Результаты выполнения всех программ (скриншоты) задания.

8. Выводы.

5. Вопросы для самоконтроля

1. Что понимают под алгоритмом?

2. Какими свойствами должен обладать алгоритм?

3. Какие существуют способы записи алгоритмов?

4. В чем заключается способ записи алгоритмов в виде блок-схем?

5. Какими достоинствами обладает способ записи алгоритмов в виде блок-схем?

6. Какие условные графические изображения используются для обоз­начения основных символов блох-схем?

7. Какие правила должны соблюдаться при начертании (выполнении) блок-схем алгоритмов?

8. Чем вызвана необходимость введения алгоритмических языков для записи программ для ЭВМ?

9. В чем заключается способ записи алгоритмов с помощью алгорит­мических языков?

10. В чем состоит сущность алгоритмизации вычислительного процес­са?

11. Из каких этапов складывается процесс подготовки и решения за­дачи на ЭВМ и в чем заключается их сущность?

12. Какой вычислительный процесс называется линейным?

13. Какой вычислительный процесс называется разветвляющимся?

14. Какой вычислительный процесс называется циклическим?

15. Что понимается под алгоритмическим языком?

16. Как классифицируются языки программирования?

17. Какие алгоритмические языки программирования вы знаете? Каково назначение этих языков?

18. Какой язык программирования называется машинным?

19. Какой язык программирования называется машинно-ориентирован­ным?

20. Какой язык программирования называется машинно-независимым?

21. Какой язык программирования называется универсальным?

22. Какой язык программирования называется специализированным?

23. Что называется программой?

24. Что такое транслятор и для чего он нужен?

25. Какой должна быть степень детализации алгоритма вычислитель­ного процесса?

26. Откуда произошел термин "алгоритм"?

27. Чем численный алгоритм отличается от логического?

28. Из каких разделов состоит современная теория алгоритмов?

29. Дайте определение алгоритма по Маркову

30. Дайте определение алгоритма по Колмогорову

31. Каким требованиям должен отвечать алгоритм?

32. Что собой представляет машина Поста?

33. Что собой представляет машина Тьюринга?

34. Какие способы записи алгоритмов вам известны?

35. Каковы недостатки словесного способа записи алгоритма?

36. Каковы достоинства и недостатки представления алгоритма в виде блок-схемы?

37. Приведите пример простейшего алгоритма, представленного при помощи диа­граммы Нэсси—Шнейдермана.

38. Что такое "псевдокоды"?

39. На какие группы можно подразделить языки программирования высокого уровня?

40. Какие базовые алгоритмические конструкции вам известны?

41. Что такое "линейный алгоритм"?

42. Что такое "разветвляющийся алгоритм"? Чем обуславливается выбор пути при ветвлении?

43. Что такое "циклический алгоритм"? Чем отличается цикл с предусловием от цикла с постусловием?

44. Как Вы понимаете приоритет операций в языке С++?

45. Приоритеты арифметических операций в языке С++.

46. Использование стандартных математических функций.

47. Использование функций scanf() и printf().

48. Структура программы на языке С++.

49. Какие операции называются унарными? Примеры.

50. Какие операции называются бинарными? Примеры.

51. Перечислите названия и знаки арифметических операций в порядке уменьшения их приоритета.

52. Что обозначают операции ++ и --?

53. Порядок выполнения префиксных и постфиксных операций ++ и --.

54. В каком заголовочном файле хранятся прототипы математических функций?

55. Как подключить к программе библиотеку математических функций?

56. Какой алгоритм называется линейным?

57. Какой линейный алгоритм называется вычислительным?

58. Для чего составляется таблица соответствия переменных?

59. Приведите пример графической схемы линейного алгоритма.

60. Что называется тестом?

61. Как и на каком этапе разработки программы составляется тест для линейного вычислительного алгоритма?

62. Как проводится проверка правильности составленной программы?

63. Что называется алгоритмом?

64. Перечислите типы алгоритмов.

65. Данте определение линейного алгоритма.

66. Перечислите способы описания алгоритмов.

67. Что называется схемой алгоритма?

68. Какие блоки используются для описания линейных алгоритмов?

69. Опишите этапы решения задачи на ЭВМ.

70. Дайте понятие контрольного теста.

71. Дайте понятие алгоритмического языка.

72. Что называется транслятором?

73. Что представляет собой программа на алгоритмическом языке?

74. Опишите структуру программы на С++.

75. Объясните выполнение оператора ввода.

76. Что такое бесформатный вывод данных?

77. Какие форматы вывода данных вам известны?

78. Как обеспечить в программе доступность библиотеки математиче­ских функций?

79. В какой форме следует задавать аргументы тригонометрических функ­ций?

80. Как на языке С++ записываются функции вычисления десятичного и натурального логарифмов?

81. Как выполняется пошаговая трассировка программы?

82. В чем заключается разница в работе "горячих" клавиш [F7] и [F8]?

83. Как обеспечить останов работающей программы перед выполнени­ем определенного оператора?

84. Как определить значение какой-либо переменной или выражения в точке останова?

85. Как в точке останова изменить существующее значение переменной?

86. Каким образом можно продолжить работу программы после оста­нова?

87. Как после останова работы программы и внесения в нее корректив запустить программу сначала?

88. На какие группы делятся бинарные операции?

89. Приведите список побитовых операций (операторов) языка С++.

90. Поясните работу побитового оператора NOT.

91. Поясните работу побитового оператора AND.

92. Поясните работу побитового оператора XOR.

93. Поясните работу побитового оператора OR

94. Поясните работу операторов побитового сдвига.