- •Содержание
- •Глава 1. Основные принципы разработки алгоритмов и программ 8
- •Глава 2. Знакомство с технологией .Nет 30
- •Глава 3. Установка visual studio. Консольные приложения 42
- •Глава 4. Введение в язык c# 52
- •Глава 5. Операции и выражения. Программы линейной структуры 67
- •Глава 6. Программирование ветвящихся процессов 85
- •Глава 7. Программирование циклических процессов 92
- •Предисловие
- •Введение
- •Глава 1. Основные принципы разработки алгоритмов и программ
- •1.1 Этапы решения задач на эвм
- •1.1.1 Постановка задачи
- •1.1.2 Формализация или математическая постановка задачи
- •1.1.3 Выбор или разработка метода решения
- •1.1.4 Разработка алгоритма
- •1.1.5 Программирование
- •1.1.6 Отладка
- •1.1.7 Вычисление и обработка результатов
- •1.2 Формы записи алгоритмов
- •1.2.1 Словесное описание
- •1.2.2 Запись алгоритма с помощью схем
- •1.2.3 Псевдокоды
- •1.2.4 Способ записи на языке программирования
- •1.3 Свойства, которыми должны обладать алгоритмы
- •1.4 Характеристики качества программного продукта
- •1.5 Технология программирования хороших программ
- •1.5.1 Способы проектирования алгоритмов и программ
- •1.5.2 Основные идеи структурного программирования
- •При разработке алгоритма нужно руководствоваться следующими рекомендациями:
- •1.5.3 Дополнительные рекомендации
- •1.6 Контрольные вопросы
- •Глава 2. Знакомство с технологией .Nет
- •2. 1 Причины появления новой платформы и нового языка
- •2.2 Платформа .Nет Framework
- •2.3 Интегрированная среда разработки Visual Studio
- •2.3.1Общеязыковая среда выполнения clr
- •2.3.2 Новации Visual Studio 2010
- •2.4 Основные понятия объектно-ориентированной технологии
- •2.4.1 Инкапсуляция
- •2.4.2 Полиморфизм
- •2.4.3 Наследование
- •2.4.4 Классы
- •Контрольные вопросы
- •Глава 3. Установка visual studio. Консольные приложения
- •3.1 Установка Visual Studio
- •3.2 Разработка приложений
- •3.2.1 Консольные приложения
- •3.2.1.1 Создание проекта. Основные окна среды
- •Контрольные вопросы
- •Глава 4. Введение в язык c#
- •4.1 Историческая справка
- •4.2 Основы языка с#
- •4.2.1 Алфавит языка
- •4.2.2 Лексемы языка, директивы препроцессора и комментарии
- •4.3 Типы данных
- •4.3.1 Классификация типов данных
- •4.3.2 Встроенные типы данных
- •4.3.2.1 Целые типы
- •4.3.2.2 Вещественные типы
- •4.3.2.3 Логический тип
- •4.3.2.4 Символьный тип
- •4.3.2.5 Финансовый тип
- •4.3.3 Литералы
- •4.4 Переменные
- •4.4.1 Объявления переменных
- •4.4.2 Инициализация переменных
- •4.4.3 Область видимости переменных
- •4.5 Именованные константы
- •Контрольные вопросы
- •Глава 5. Операции и выражения. Программы линейной структуры
- •5.1 Выражения
- •5.1.1 Операции
- •5.1.1.1 Арифметические операции
- •5.1.1.2 Операции отношения, сдвига с#
- •5.1.1.3 Поразрядные и логические операции с#
- •5.1.1.4 Операции присваивания
- •5.1.1.5 Условная операция
- •5.2 Преобразование и приведение типов
- •5.2.1 Присвоение переменной одного типа значения другого типа
- •5.2.2 Явное преобразование типа
- •5.2.3 Преобразование типов в выражениях
- •5.3 Класс Math
- •Математические функции можно использовать только с величинами числовых типов. Углы тригонометрических функций должны быть представлены в радианах.
- •5.4 Линейные алгоритмы и программы
- •5.4.1 Простейшие способы вывода
- •5.4.2 Простейшие способы ввода с клавиатуры
- •5.5 Примеры
- •Контрольные вопросы
- •Варианты заданий для самостоятельной работы
- •Глава 6. Программирование ветвящихся процессов
- •6.1 Условные операторы
- •6.2 Алгоритмы и программы разветвленной структуры
- •Контрольные вопросы
- •Варианты заданий для самостоятельной работы
- •Глава 7. Программирование циклических процессов
- •7.1 Понятие цикла
- •7.2 Операторы управления
- •7.2.1 Оператор goto
- •7.2.2 Специальные операторы управления
- •7.2.3 Операторы циклов
- •7.3 Программирование вычислительных процессов усложненной структуры
- •7.3.1 Итерационные циклы
- •7.3.2 Вложенные циклы
- •Контрольные вопросы
- •Варианты заданий для самостоятельной работы
Контрольные вопросы
-
Какие структуры языка используются для организации повторяющихся вычислений?
-
Дайте определение понятию цикла.
-
Какие переменные называются переменными цикла?
-
Перечислите важнейшие концепции организации циклов.
-
Какие в языке существуют специальные операторы, которые, изменяют естественный порядок выполнения вычислений?
-
Дайте характеристику назначению и правилам использования оператора безусловного перехода goto.
-
Какие разновидности циклических операторов имеются в языке?
-
Приведите схему алгоритма и синтаксис цикла с параметром. Дайте пример его использования.
-
Приведите схему алгоритма и синтаксис цикла с предусловием. Дайте пример его использования.
-
Приведите схему алгоритма и синтаксис цикла с постусловием. Дайте пример его использования.
-
Какой цикл называется арифметическим? Приведите схему алгоритма и программу с организацией арифметического цикла.
-
Какой цикл называется итерационным? Приведите схему алгоритма и программу с организацией итерационного цикла.
-
Какую алгоритмическую структуру называют вложенными циклами. Охарактеризуйте правила организации внешнего и внутреннего циклов. Приведите пример задачи, где требуется использование такой структуры.
Варианты заданий для самостоятельной работы
-
Дано целое N>0, разложить его на простые множители.
-
Дано число А. Написать программу получения в порядке убывания всех делителей данного числа.
-
Дано натуральное n. Написать программу вычисления значений:
1 1 1
+ +...+ , n>=2.
1*2 2*3 (n-1)*n
-
Дано натуральное n. Написать программу вычисления значений:
1 (-1) (n-1)
1- +...+
2 n
-
Дано натуральное n. Написать программу вычисления значений:
1 1 1
1+ * 1 + *...* 1+
12 22 n2
-
Обозначим:
1 1 1
f = + +...+ , i=0,1,...
i2+1 i2+2 i2+i+1
Написать программу вычисления произведения:
f * f *...* f , n – дано.
-
Объем V – цилиндрической подковы вычисляется по формуле
h u(n)
V= [a(3r2 – a2) + 3r2*( b-r)] .
3b 180
Составить алгоритм получения зависимости V от угла u, если a, b и r известны, а u изменяется в диапазоне от u1 до u2 с шагом du.
-
Составить алгоритм для расчета функции:
0,95*(sin(x))3
y =
1+0,95*x2
при изменении x от 0 до 12 с шагом dх=0.2.
-
Самолет летит из пункта А к пункту В со средней скоростью v. Составить алгоритм для нахождения времени полета t1, если есть встречный ветер, скорость которого v1, и времени t2, если ветра нет. Расстояние между пунктами А и В считать равным S. Скорость ветра v1 может изменяться от 0 до 15 м/с. Считать шаг изменения dv1 =0.5 м/с.
-
Цех вводится в строй постепенно, выдавая в первый день х1% продукции от нормы, во второй – х2%, в третий – x3%,..., в n-й день – хn%. Составить алгоритм для расчета продукции S за n дней, если в первый день цех выдал А продукции.
-
Составить алгоритм для расчета функции y при значениях х=0; 0.1; 0.2;...;10.
x-1
, если x<=1
y = 2*x2+3
1.05*(x-1)2, если x>1.
-
Дана функция y=0.5+sin(5x), причем х изменяется от 0 до 2π с шагом dх=π/6. Составить алгоритм для расчета функции y.
-
Постоянная времени Т электрической цепи равна Т=RC, где R и С – соответственно сопротивление и емкость цепи. Составить алгоритм решения задачи при условии, что R изменяется от 102 Ом до 103 Ом с шагом dR=102 Ом.
-
Кинетическая энергия движущегося тела W=m*v2/2, где m – масса тела, v – его скорость. Составить алгоритм для получения зависимости W от m при значениях v, изменяющихся от v1 до v2 с шагом dv. Масса изменяется от m1 до m2 с шагом dm.
-
Дана функция x=a*sin(k*t+2)*cos(k*t). Получить значения этой функции, если а изменяется от 5 до 7 с шагом 0.12, t изменяется от 4.2 до 6.2 с шагом 0.17 а k=1,2,3,...,12.
-
Найти итерационным методом с точностью до е корень уравнения:
2*x-3*sin(x)=0.
-
Дана функция y=-2*x2+3*x+1.5. Составить алгоритм для поиска максимального значения y, если х изменяется в диапазоне 0.1<=х<=1 с шагом dх=0.01.
-
Слесарь-сантехник начинает работу в 8 ч. и заканчивает в 17 ч., делая перерыв на обед с 12 до 13 ч. Через каждые 30 мин работы он устраняет течь в кранах водопроводной системы одной из квартир жилого дома. Составить алгоритм для вычисления количества воды Q, которое вытечет из неисправных кранов за рабочий день слесаря-сантехника, если утечка воды в одной квартире составляет Q [л/мин].
-
Даны функции y1=x3 и y2=sin(x). Вычислить точки пересечения этих функций при х>0. Вычисления производить с точностью до е.
-
Даны целые числа n и K[n]. Получить сумму S последних цифр чисел.
-
Дано целое число K. Найти сумму цифр числа К. (Пусть запись К в десятичной системе есть a[n]...a[2] a[1] a[0];
найти a[0]+a[1]+a[2]+...+a[n]).
-
Даны действительные числа a,h, целое n. Вычислить:
f(a) + f(a+h)+f(a+2h)+...+ f(a+nh), где f(x)=(x2+ 1)/x.
-
Даны целое n, действительное x. Вычислить: sinx+sin2x+...+sinnx.
-
Дано целое n. Чему равно произведение его цифр?
-
Дано вещественное число a. Найти среди чисел 1; 1+1/2; 1+1/2+1/3 ... первое, большее a.
-
Дано целое K. Сколько цифр в числе 5*К?
-
Дано вещественное x. Вычислить:
s=(x-2)+(x-4)+(x-8)+...+(x-64);
p=(x-1)*(x-3)*(x-7)...(x-63).
-
Даны действительные числа x, a, целое число i. Вычислить:
((...((x+a)2 +a)2 +...+a)2 +a)2 +a, (0<a<9).
-
Дано вещественное число x. Вычислить:
x-x3/3!+ x5/5!-x7/7!+x9/9!-x11/11!+x13/13!
-
Вычислить (1-sin 0.1)+(1+sin 0.2)+ ...+(1+sin 1.0).
-
Даны целое n, вещественное х. Вычислить:
cosx + cosx2 +...+cosxn
-
Дано целое число n. Найти первую цифру числа n.
-
Дано целое число n. Вычислить: 3+6+...+3*(n-1)+3n.
-
Дано целое n. Вычислить:
1/sin 1+1/(sin 1+sin 2)+...+1/(sin 1+...+sin n).
-
Дано целое n. Вычислить: (1+1/12 ) (1+1/22 )...(1+1/n2 ).
-
Дано вещественное число a, целое n. Вычислить:
а* (a-1)* (a-2) *...* (a-n).
-
Дано вещественное число a, целое n. Вычислить:
1/a+1/a2 + 1/a4 +...+1/a2n
-
Дано вещественное число a, целое n. Вычислить:
1/a+1/(a(a+1))+...+1/(a(a+1)...(a+n)).
-
Дано целое число K. Выяснить, входит ли цифра 3 в его запись.
-
Дано целое число K. Поменять порядок цифр в числе на обратный.
-
Дано целое число n. Получить a[n], имея зависимость a[0]=1;
a[k]=k*a[k-1]+1/k; k=1,2,...
-
Дано целое n (n>4). Получить a[n], если
a[0]=a[1]=0; a[2]=1.5;
a[i]=(i+1)/(i2 +1) a[i-1]-a[i-2]*a[i-3], i=3, 5,...
-
Даны вещественные q,r,b,c,d, целое n (n>2). Получить
x[n], если x[0]=c; x[1]=d;
x[k]=q*x[k-1]+r*x[k-2]+b, k=2, 3,...n
-
Найти произведение a[0] a[1]...a[14], если
a[0]=a[1]=1; a[k]=a[k-2]+a[k-1]/2(k-1), k=2, 3,...
-
Дано 50 вещественных чисел. Определить наибольшее из них.
-
Дано целое N>0, за которым следует N вещественных чисел. Определить, сколько среди них отрицательных.
-
Дана непустая последовательность положительных целых чисел, за которой следует 0 (это признак конца последовательности). Вычислить среднее арифметическое этих чисел.
-
Дано целое N>0, за которым следует N целых чисел. Определить, сколько среди них простых чисел.
-
Дано целое N>0, за которым следует N целых чисел. Определить, сколько среди них четырехзначных.
-
Дано целое N>0, за которым следует N целых чисел. Определить, которое из них имеет наибольшее число простых делителей.