- •Содержание
- •Глава 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 Вложенные циклы
- •Контрольные вопросы
- •Варианты заданий для самостоятельной работы
Варианты заданий для самостоятельной работы
-
Даны целые числа X, Y, Z. Если числа не равны, то заменить каждое из них одним и тем же числом, равным меньшему из исходных.
-
Даны произвольные числа а, b и с. Если нельзя построить треугольник с такими длинами сторон, то напечатать 0, иначе напечатать 3, 2 или 1 в зависимости от того, равносторонний это треугольник, равнобедренный или какой-либо иной.
-
Для заданного а найти корень уравнения f(x)=0,
где f(x)=2*a*x+abs(a-1), при а>0.
-
Даны числа а, b, с (а!=0). Найти вещественные корни уравнения a*x2+b*x+c=0. Если корней нет, то сообщить об этом.
-
По номеру y (y>0) некоторого года определить с – номер его столетия (учесть, что, к примеру, началом 20-го столетия был 1901).
-
Вычислить: u= (max(x,y,z))2-2x*min(x,y,z), где x, y, z – заданы.
-
Считая, что стандартные функции sin и cos применимы только к аргументам на отрезке [0,PI/2], вычислить y=sin(x) для произвольного числа х. Формулы приведения:
sin(x)=sin(pi-x); sin(x)=cos(pi/2-x); sin(x)=sin(2*pi*n+x);
где n – произвольное целое число.
-
Значения переменных а, b, с поменять местами так, чтобы оказалось а>=b>=с. Переменные а, b, с заданы.
-
Даны числа а, b, с, d, e, f. Напечатать координаты точки пересечения прямых, описываемых уравнениями a*х+b*y=c и d*х+e*y=f, либо сообщить, что эти прямые совпадают или не пересекаются.
-
Даны координаты точки (x,y). Определить, в каком квадранте находится точка, и напечатать номер квадранта.
-
Определить, являются ли значения целочисленных переменных N и М кратными 3. Если оба значения кратны 3, то вычислить их сумму, в противном случае – разность.
-
Даны значения a, b и c. Удвоить наибольшее из них, а остальные заменить их абсолютными значениями.
-
Определить, принадлежат ли значения целочисленных переменных N и М отрезку [100;999]. Если да, то вычислить их сумму, в противном случае – разность квадратов.
-
Даны значения a, b, c (a2!=0). Определить, имеет ли уравнение a*x2+b*x+c действительные корни.
-
Даны вещественные числа a, b, c и m. Если a<b<c>m, то каждое число заменить наибольшим из них.
-
Даны вещественные x и y. Если x и y отрицательны, то каждое значение заменить его модулем. Если отрицательно одно из них, то оба значения увеличить на 0.5.
-
Даны вещественные x и y. Если оба значения неотрицательны и одно из них не принадлежит отрезку [0.5;2.5], то оба значения уменьшить в 10 раз. В остальных случаях x и y оставить без изменения.
-
Даны значения x, y и z. Выбрать те из них, которые принадлежат интервалу [1;3].
-
Даны значения a и b. Меньшее из двух заменить их полусуммой, а большее – их удвоенным произведением.
-
Даны значения a, b и c. Возвести в квадрат те из них, значения которых неотрицательны.
-
Даны значения a, b и c. Проверить, выполняются ли неравенства a>b>с или a<b<c. Выдать соответствующие сообщения.
-
Даны значения a, b и c. Удвоить эти числа, если a>b>c, и заменить их абсолютными значениями, если это не так.
-
Даны действительные числа a1 ,b1, c1, a2, b2, c2. Проверить условие a1*b2 – a2*b1> 0.0001, при котором система совместна и имеет единственное решение. Найти это решение.
-
Даны действительные числа x1, x2, x3, y1, y2, y3. Принадлежит ли начало координат треугольнику с вершинами (x1,y1), (x2,y2), (x3,y3)?
-
Даны числа a, b, c и x, y. Выяснить, пройдет ли кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.
-
Определить, является ли данное целое число к четным?
-
Даны числа a, b, c, d, составляющие четырехзначное число. Определить, все ли четыре цифры различны.
-
Даны целые числа K, L. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить нулями.
-
Даны значения переменных x, y. Выяснить, принадлежит ли точка (x,y) кругу единичного радиуса с центром в начале координат.
-
Выяснить, принадлежит ли точка с координатами (x,y) квадрату со стороной единица и с центром в начале координат.
-
Выяснить, принадлежит ли точка с координатами (x,y) пересечению окружности x2+y2=1 и параболы y=x2 .
-
Выяснить, принадлежит ли точка с координатами (x,y) пересечению окружности x2+y2=1 и прямой y=x/2 в своей нижней части.
-
Если значение переменной W!= 0 и котангенс от W меньше 0.5, то поменять знак W. В противном случае W присвоить 1.
-
Даны значения x, y и z. Выбрать те из них, которые принадлежат интервалу [1;3].
-
Даны значения a и b. Меньшее из двух заменить их полусуммой, а большее – их удвоенным произведением.
-
Даны значения a, b и c. Проверить, выполняются ли неравенства a>b>с или a<b<c. Выдать соответствующие сообщения.
-
Даны значения a, b и c. Удвоить эти числа, если a>b>c, и заменить их абсолютными значениями, если это не так.
-
Определить, будет ли остаток при делении целых чисел i и j, равен одному из заданных значений a и b.
-
Даны целые числа K, L. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных.
-
Даны действительные числа x, y, z. Вычислить:
max(x,y,z)2-min(x,y,z).
-
Даны действительные числа a, b, c.
max(a,b,c) при a>b;
Вычислить: z= min(a,b,c) при b<c;
min(a,b)*max(a,c) иначе.
-
Выяснить, принадлежит ли точка c координатами (x,y) кругу единичного радиуса с центром в точке с координатами (v,z).
-
Выяснить, принадлежит ли точка с координатами (x,y) квадрату со стороной равной 1 и с центром в точке с координатами (v,z).
-
Даны действительные числа a, b, c, d. Если a>b>c>d, то числа оставить без изменения. В противном случае значение a должно стать максимальным из всех значений.
-
Определить, является ли данное целое число X нечетным. Если ответ – да, то разделить его на два, если ответ – нет, то умножить его на 3.
-
Даны целые числа X, Y, Z. Если числа не равны, то заменить каждое из них одним и тем же числом, равным меньшему из исходных.
-
Даны числа x, y, z. Вычислить: min(x,y,z)/(max(x,y,z)*3).
-
Дана точка с координатами (X,Y,Z). Определить, находится ли она внутри сферы с центром (2,3,4) и радиусом 3.
-
Даны точки A и B с координатами (X1,Y1) и (X2,Y2). Найти тангенс угла, образованного прямой AB и осью Y.
-
Дана точка с координатами (X,Y,Z). Определить длину окружности, проходящей через эту точку и начало координат.