
- •История
- •Конфигурация первого ibm pc
- •Ключевые технологи
- •Последующее развитие модельного ряда
- •Системное программное обеспечение. Операционные системы.
- •Операционные системы.
- •Классификация ос.
- •1.1 Возможности, которые предоставляет ос Linux
- •1.3 Характерные особенности Linux как ос
- •Операционная система ms dos.
- •Файловая система.
- •Операционная система Windows
- •Графический интерфейс
- •Объектно-ориентированный подход
- •Типы окон:
- •Элементы окон.
- •Компьютерные вирусы и антивирусные средства
- •Более строгое определение
- •Основные разновидности вирусов.
- •Системы программирования к этой категории относятся программы, предназначенные для разработки программного обеспечения:
- •Виды инструментального по
- •Константы и переменные
- •Присваивание
- •Приоритет
- •Вызов операторов с присваиванием
- •Арифметические операторы
- •Логические операторы
- •Операторы сравнения
- •Условный оператор if
Логические операторы
Существует несколько бинарных логических операторов и один унарный. В качестве аргументов для всех этих операторов выступают логические литералы (константы), логические переменные и выражения, имеющие логическое значение.
Операторы:
! — «отрицание», унарный оператор, меняет значение на противоположное (инвертирует: ложь превращает в истину, а истину — в ложь).
&& — логическое «и» («конъюнкция», «пересечение»), бинарная операция, возвращает истинное значение тогда и только тогда, когда оба операнда истины.
|| — логическое «или» («дизъюнкция», «объединение»), бинарная операция, возвращает истинное значение, когда хотя бы один из операндов истинный.
У логических операторов следующий приоритет: отрицание, конъюнкция, дизъюнкция.
Также как и в случае с арифметическими операторами для коррекции приоритета используются круглые скобки. Если одна пара скобок вложена в другую пару скобок, то сначала вычисляется значение во внутренних скобках.
Примеры:
boolean a = true; boolean b; b = a || true; // b истинно b = !b; // b ложно System.out.println(b); // выведет false a = a || b; // a истинно boolean c; c = a && (a||b); //с истинно System.out.println(c); // выведет true
В Java логический и числовые типы нельзя преобразовывать друг к другу.
Операторы сравнения
Большинство операторов сравнения применимы к числовым значениям. Всё это бинарные операторы, имеющие два числовых аргумента, но возвращающие логическое значение.
> — оператор «больше».
>= — оператор «больше или равно».
< — оператор «меньше».
<= — оператор «меньше или равно».
!= — оператор «не равно».
== — оператор эквивалентности (равенства).
Последние два оператора могут применяться не только для числовых значений, но и, например, для логических.
Примеры:
boolean m; m = 5 >= 4; // истина m = 5 != 5 || false; // ложь boolean w; w = m == false; // истина System.out.println(w); // выведет true
Очень важно не путать оператор эквивалентности с операцией присваивания.
В выражениях, где встречаются операторы разных типов, сначала выполняются арифметические операции, затем операции сравнения, затем логические операции и в последнюю очередь присваивание.
Вопрос №25. Операторы ветвления. Условный оператор
Оператор ветвления (условная инструкция, условный оператор) — оператор, конструкция языка программирования, обеспечивающая выполнение определённой команды (набора команд) только при условии истинности некоторого логического выражения, либо выполнение одной из нескольких команд (наборов команд) в зависимости от значения некоторого выражения.
Условный оператор if
Оператор if обеспечивает выполнение или пропуск инструкции в зависимости от указанного логического условия. Если условие истинно, то инструкция выполняется.
if (условие) инструкция;
На месте инструкции может быть как обычная инструкция (одна команда), так и составная инструкция (блок содержащий несколько команд, в том числе, другие условные операторы).
Примеры (если в качестве значений переменных будет указан нуль, то деление не будет производиться и его результат не станет выводиться на экран):
// Пример 1 int a = 25; if (a != 0) System.out.println( 100/a ); // Пример 2 int b = 25; if (b != 0) { System.out.println( 100/b ); }
Не смотря на то, что код в первом примере выглядит компактнее, только во втором примере можно было бы выполнить несколько инструкций в случае истинности условия.
У оператора if существует формат с дополнительной частью else:
if (условие) инструкция1; else инструкция2;
В случае истинности условия выполняется простая или составная инструкция1, а в случае ложности простая или составная инструкция2.
Пример:
int a = 0; if (a != 0) System.out.println( 100/a ); else System.out.println("На нуль делить нельзя");
Вопрос №26. Операторы организации циклов.
Командой повторения или циклом называется такая форма организации действий, при которой одна и та же последовательность действий повторяется до тех пор, пока сохраняется значение некоторого логического выражения. При изменении значения логического выражения на противоположное повторения прекращаются (цикл завершается).
Для организации цикла необходимо выполнить следующие действия:
перед началом цикла задать начальное значение параметра;
внутри цикла изменять параметр цикла с помощью оператора присваивания;
проверять условие повторения или окончания цикла;
управлять циклом, т.е. переходить к его началу, если он не закончен, или выходить из цикла в противном случае.
Различают циклы с известным числом повторений (цикл с параметром) и итерационные (с пред- и постусловием).
В цикле с известным числом повторений параметр изменяется в заданном диапазоне.
Если в цикле изменяется простая переменная, то она является параметром цикла; если в цикле изменяется переменная с индексом, то индекс этой переменной является параметром цикла.
Для организации цикла с известным числом повторений в Pascal используется оператор for.
Структура цикла, организованного с помощью этого оператора, имеет вид:
For I := A To B Do Begin End;
или
For I := A DownTo B Do Begin End;
Здесь I — параметр, изменяющийся в цикле; A, B — выражения порядкового типа, обозначающие начальное, конечное значение параметра цикла. Шаг изменения номера параметра цикла равен 1, если в заголовке цикла стоит To (т.е. реально следующее значение параметра цикла вычисляется с помощью функции succ); и -1 — при DownTo (вычисление производится с помощью функции pred).
Порядок выполнения цикла с шагом 1 следующий: вычисляются значения начального и конечного значений параметра цикла; параметр если I принимает начальное значение; если I меньше или равно конечному значению, исполняется тело цикла; значение параметра цикла увеличивается, т.е. I := succ(I); проверяется условие I=B) и при его выполнении цикл повторяется. Выход из цикла осуществляется, если I>B (IB (или A Sum_Max Then Begin Sum_Max := Sum; Ch := I End;
Вопрос №27. Виды циклов.
27.Циклы В большинстве задач, встречающихся на практике, необходимо производить многократное выполнение некоторого действия. Такой многократно повторяющийся участок вычислительного процесса называется циклом. Если заранее известно количество необходимых повторений, то цикл называетсяарифметическим. Если же количество повторений заранее неизвестно, то говорят обитерационном цикле. В итерационных циклах производится проверка некоторого условия, и в зависимости от результата этой проверки происходит либо выход из цикла, либо повторение выполнения тела цикла. Если проверка условия производится перед выполнением блока операторов, то такой итерационный цикл называется циклом с предусловием (цикл "пока"), а если проверка производится после выполнения тела цикла, то это цикл с постусловием (цикл "до"). Особенность этих циклов заключается в том, что тело цикла с постусловием всегда выполняется хотя бы один раз, а тело цикла с предусловием может ни разу не выполниться. В зависимости от решаемой задачи необходимо использовать тот или иной вид итерационных циклов. Арифметические циклы Синтаксис: for переменная := значение 1 to значение 2 do оператор или for переменная := значение 1 downto значение 2 do оператор Оператор for вызывает оператор, находящийся после слова do, по одному разу для каждого значения в диапазоне от значения 1 до значения 2. Переменная цикла, начальное и конечное значения должны иметь порядковый тип. Со словом to, значение переменной цикла увеличивается на 1 при каждой итерации цикла. Со словом downto, значение переменной цикла уменьшается на 1 при каждой итерации цикла. Не следует самостоятельно изменять значение управляющей переменной внутри цикла. Как и в случае использования оператора условного прехода, следует помнить, что синтаксис языка допускает запись только одного оператора после ключевого слова do, поэтому, если вы хотите в цикле выполнить группу операторов, обязательно надо объединить их в составной оператор (окаймить операторными скобками begin ... end). В противном случае будет сделана логическая ошибка программы. Пример 1. Квадраты чисел от 2-х до 10-и. for x:=2 to 10 do WriteLn(x*x); Пример 2. Латинский алфавит. for ch:='A' to 'Z' do Writeln(ch); Пример 3. Использование цикла с downto. for i:=10 downto 1 do WriteLn(i); Пример 4. Использование составного оператора. for x:=1 to 10 do begin y:=2*x+3; WriteLn('f(',x,')=',y); end; Итерационные циклы с предусловием Синтаксис: while выражение do оператор Оператор после do будет выполняться до тех пор, пока логическое выражение принимает истинное значение (True). Логическое выражение является условием возобновления цикла. Его истинность проверяется каждый раз перед очередным повторением оператора цикла, который будет выполняться лишь до тех пор, пока логическое выражение истинно. Как только логическое выражение принимает значение ложь (False), осуществляется переход к оператору, следующему за while. Выражение оценивается до выполнения оператора, так что если оно с самого начала было ложным (False), то оператор не будет выполнен ни разу. Здесь также следует помнить, что позволяется использовать только один оператор после ключевого слова do. Если необходимо выполнить группу операторов, то стоит использовать составной оператор. Пример. eps:=0.001; while x > eps do x:=x/2; Итерационные циклы с постусловием Синтаксис: repeat оператор; оператор; ... оператор until выражение Операторы между словами repeat и until повторяются, пока логическое выражение является ложным (False). Как только логическое выражение становится истинным (True), происходит выход из цикла. Так как выражение оценивается после выполнения операторов, то в любом случае операторывыполнятся хотя бы один раз. Пример. repeat WriteLn('Введите положительное число'); ReadLn(x); until x>0; Операторы завершения цикла Для всех операторов цикла выход из цикла осуществляется как вследствие е