- •Билет №1:
- •I,j:Integer;
- •Билет №2:
- •Билет №3:
- •I,j:Integer;
- •//Логические константы
- •2) //Сравнения
- •3) //Логические операции
- •Билет №4:
- •Билет №6
- •Цикл с постусловием
- •3) Для того чтобы досрочно завершить виток цикла используется оператор Continue, для завершения цикла полностью – оператор Break.
- •Билет№7
- •Циклы с пред условиями
- •3)Отличие состоит в том что в цикле с постусловием цикл завершится в случае когда условие станет истинным, в цикле же с предустловием наоборот – ложным.
- •Билет №8:
- •Билет №9:
- •Program _Case;
- •1:Goto Met1;
- •2:Goto Met2;
- •Билет №10:
- •Многомерные массивы
- •I,j:Integer;
- •I:Integer;
- •IMax,iMin:Integer; {Наибольший и наименьший}
- •I:Integer;
- •Билет №11, 12:
- •Билет №13, 14:
- •Var //Раздел описаний подпрограммы
- •I:Integer;
- •Var //Раздел описаний подпрограммы
- •I:Integer;
- •X:String; //Раздел описаний основной программы
- •Билет №20: Оконные диалоги. Обработка ошибок
- •Билет №21:
- •Inherited Create; //Вызываем старый конструктор
- •Var I,j,k:Integer;
- •I,j:Integer;
- •I,j:Integer;
- •Inherited Destroy; //Вызываем старый деструктор
- •Билет №22:
- •Var //переменные:
- •Билет №23,24:
- •Билет №25: Битовые карты
- •3) Копирование изображений
- •Билет №26,27:
- •Билет №28:
- •Билет №29:
Билет№7
Циклы с пред условиями
//Эта циклическая структура образована словами
// WHILE DO
// (пока) (выполнять)
//
2)
//Схема записи:
// -----------------------------------
// While условие продолжения цикла Do
// оператор <- тело цикла
// -----------------------------------
3)Отличие состоит в том что в цикле с постусловием цикл завершится в случае когда условие станет истинным, в цикле же с предустловием наоборот – ложным.
4)
//=========================
//НАЙТИ СТАРШУЮ ЦИФРУ ЧИСЛА
//=========================
Write('n = '); ReadLn(n); //Ввод значения n
n:=Abs(n); //Взятие по модулю
While n>9 Do //Цикл удаления цифр
n:=n Div 10; //Частное
WriteLn('Result: ',n);
//========================
//ВЫЧИСЛИТЬ НОД ДВУХ ЧИСЕЛ
//========================
Write('n m = '); ReadLn(n,m); //Ввод значений n, m
n:=Abs(n); m:=Abs(m); //Взятие по модулю
While m<>0 Do //Цикл поиска НОД
Begin
p:=n Mod m; //Остаток
n:=m; m:=p; //Обмен значениями
End;
WriteLn('Result: ',n);
ReadLn;
End.
Билет №8:
Порядковые типы данных характеризуются тем что их значения пронумерованы целими числами, эти номера называются кодами. Например все целые типы являются порядковыми, коды совпадают с самим числом, логические данные так же порядковые, т.к. значению False назначен код 0 а True – 1, символьные данные так же порядковые, они занумерованы от 0 до 255, к непорядковым относятся вещественные числа, строки и т.д.
Для каждого порядкового типа можно получить его код, для этого используется функция Ord, например Ord(‘A’) – код буквы А – число 65. Порядковые типы обладают тем свойством что среди данных такого типа имеются первое и последнее, а для любого данного этого типа можно найти предыдущее и последующее. Пусть х – данное такого типа, тогда предыдущее данное возвращается функцией Pred(x); следующее - Succ(x); например Write(Pred(‘A’), Succ(‘A’)); выведет на экран @B.
Эти циклы образуются ключевыми словами for, to(DownTo), Do что означает: Для, по направлению вперёд(назад), выполнить соответственно. В формировании цикла учавствует некоторая переменная порядкового типа, её называют счётчиком цикла (тип любой). Перед выполнением цикла счётчику назначается начальное значение, которое меняется с каждым витком цикла, описание цикла начинается заголовком, например: Var i:integer
Begin
в этом случае счётчик начинается со
значением 5 и заканчивается значением
10, всё вместе называется заголовком
цикла.
Далее пишется тело цикла в виде 1го оператора и ; перед началом выполнения цикла проверяется непротиворечивость начального и конечного значения счётчика, если будет найдено противоречие то цикл не выполнится, в противном случае счётчику присваивается начальное значение и делается первый виток (т.е. первый раз выполняется тело) по окончанию счётчик изменяет своё значение в заданном направлении, затем проверяется остаётся ли это значение внутри заданного диапазона, если да то тело цикла выполняется повторно и делается новая проверка, если нет то цикл завершается, по окончанию цикла счётчик оказывается за пределом цикла. Примеры:
Var i,n,s:integer; c:char;
Begin (вывести все обыкновенные символы)
Write(‘Result ’);
For c:=’ ‘ To #255 Do
Write(c);
…
Вывести все делители целого числа:
Write(‘n= ‘); Readln(n);
For i=1 To Abs(n) Do
If n Mod i=0 then write(I,’ ‘);
Writeln;
…
Проверить простоту числа:
Write(‘n= ‘); Readln(n);
c:=’Y’;
For i=2 To Trunc(Sqrt(Abs(n))) Do
If n Mod i=0 Then Begin c:=’N’; Break; End;
Writeln(‘Result ‘,c);
…
//========================================
//ПРОВЕРИТЬ ФОРМУЛУ
// 3 3 3 2
// 1 + 2 + ... + N = (1+2+...+N)
//========================================
Write('n = '); ReadLn(n);
c:='Y';
s:=0;
For i:=1 To n Do
Begin
s:=s+i*i*i;
If 4*s<>sqr(i*(i+1)) Then c:='N'; //Если формула не верна
End;
WriteLn('Result: ',c);
ReadLn;
End.
Не знаю такого
