Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Delphi. Lesson_2

Delphi. Lesson_2

Nikita Zaitsev

November 09, 2016
Tweet

More Decks by Nikita Zaitsev

Other Decks in Programming

Transcript

  1. Хорошо, решили. А как работать то? Каждое изменение должно сопровождаться

    "пушом" Не забывайте получать изменения в коде, сделанные вашими товарищами Что-то не получается? Открывай документацию и учи!
  2. Основные команды g i t i n i t -

    инициализировать готовый репозиторий g i t p u s h - отправить изменения g i t p u l l - получить изменения g i t c h e c k o u t - b " и м я в е т к и " - создать ветку и перейти к ней g i t m e r g e " н а з в а н и е в е т к и д л я с л и я н и я " - слияние веток
  3. Алгоритмы ветвления i f [ ( ] < л о

    г и ч е с к о е в ы р а ж е н и е > [ ) ] [ t h e n ] < о п е р а т о р 1 > [ e l s e < о п е р а т о р 2 > ]
  4. Решение: r e a d l n ( a )

    ; i f a = 0 t h e n w r i t e l n ( ' н о л ь ' ) e l s e i f a = 1 t h e n w r i t e l n ( ' о д и н ' ) e l s e i f a = 2 t h e n w r i t e l n ( ' д в а ' ) e l s e i f a = 3 t h e n w r i t e l n ( ' т р и ' ) e l s e i f a = 4 t h e n w r i t e l n ( ' ч е т ы р е ' ) e l s e i f a = 5 t h e n w r i t e l n ( ' п я т ь ' ) e l s e i f a = 6 t h e n w r i t e l n ( ' ш е с т ь ' ) e l s e i f a = 7 t h e n w r i t e l n ( ' с е м ь ' ) e l s e i f a = 8 t h e n w r i t e l n ( ' в о с е м ь ' ) e l s e i f a = 9 t h e n w r i t e l n ( ' д е в я т ь ' ) ;
  5. Оператор выбора c a s e < в ы р

    а ж е н и е > o f З н а ч е н и е 1 [ , з н а ч е н и е 1 1 ] : о п е р а т о р 1 ; [ З н а ч е н и е 2 [ , з н а ч е н и е 2 1 ] : о п е р а т о р 2 ; ] [ З н а ч е н и е 3 . . з н а ч е н и е 5 ] : о п е р а т о р 3 ; ] . . . [ e l s e : о п е р а т о р E l s e 1 ; ] e n d ;
  6. Верное решение R e a d l n ( a

    ) ; C a s e a o f 0 : w r i t e l n ( ' н о л ь ' ) ; 1 : w r i t e l n ( ' о д и н ' ) ; 2 : w r i t e l n ( ' д в а ' ) ; 3 : w r i t e l n ( ' т р и ' ) ; 4 : w r i t e l n ( ' ч е т ы р е ' ) ; 5 : w r i t e l n ( ' п я т ь ' ) ; 6 : w r i t e l n ( ' ш е с т ь ' ) ; 7 : w r i t e l n ( ' с е м ь ' ) ; 8 : w r i t e l n ( ' в о с е м ь ' ) ; 9 : w r i t e l n ( ' д е в я т ь ' ) ; e n d ;
  7. Циклы С предусловием (while) С постусловием (until) Со счётчиком (for)

    Совместный цикл (for) С выходом из середины (break)
  8. Цикл с предусловием w h i l e < у

    с л о в и е > d o b e g i n < т е л о ц и к л а > e n d ;
  9. Цикл с постусловием r e p e a t <

    т е л о ц и к л а > u n t i l < у с л о в и е в ы х о д а >
  10. Цикл со счётчиком f o r i : = 1

    t o 9 d o b e g i n / / т е л о ц и к л а e n d ;
  11. Совместный цикл f o r i t e m i

    n [ 1 . . 1 0 0 ] d o b e g i n / / т е л о ц и к л а e n d ;
  12. Цикл с выходом из середины w h i l e

    ( n d i v 1 0 < > 0 ) d o b e g i n i f ( N m o d 1 0 = 0 ) t h e n b r e a k e l s e w r i t e l n ( ' D o i t a g a i n ! ' ) ; e n d ; w r i t e l n ( N ) ;
  13. Строки тип данных, значениями которого является произвольная последовательность (строка) символов

    алфавита. Каждая переменная такого типа (строковая переменная) может быть представлена фиксированным количеством байтов либо иметь произвольную длину. неограниченный массив символьного типа
  14. Функции преобразования I n t T o S t r

    ( N : I n t e g e r ) : S t r i n g - преобразование числа в строку S t r T o I n t ( S : S t r i n g ) : I n t e g e r - преобразование строки в число F l o a t T o S t r ( X : E x t e n d e d ) : S t r i n g - преобразование числа с плавающей точкой в строку S t r T o F l o a t ( S : S t r i n g ) : E x t e n d e d - преобразует строку в число с плавающей точкой
  15. Функции преобразования A n s i L o w e

    r C a s e ( c o n s t S : S t r i n g ) : S t r i n g - преобразование строки к нижнему регистру A n s i U p p e r C a s e ( c o n s t S : S t r i n g ) : S t r i n g - преобразование строки к верхнему регистру L e n g t h ( c o n s t S : S t r i n g ) : I n t e g e r - измеряет длину строки T r i m ( c o n s t S : S t r i n g ) : S t r i n g - удаляет из строки начальные и завершающие пробелы и управляющие символы T r i m L e f t ( c o n s t S : S t r i n g ) : S t r i n g - удаляет из строки начальные пробелы и управляющие символы T r i m R i g h t ( c o n s t S : S t r i n g ) : S t r i n g удаляет из строки завершающие пробелы и управляющие символы
  16. Функции сравнения A n s i C o m p

    a r e S t r ( c o n s t S 1 , S 2 : S t r i n g ) : I n t e g e r - Сравнивает две строки S1 и S2 с учётом регистра символов.Возвращает значение < 0 если S1 < S2, 0 если S1=S2, > 0 если S1 > S2 A n s i C o m p a r e T e x t ( c o n s t S 1 , S 2 : S t r i n g ) : I n t e g e r - Сравнивает две строки S1 и S2 без учёта регистра символов. Возвращает значение < 0 если S1 < S2, 0 если S1=S2, >0 если S1 > S2
  17. Прочие функции P o s ( S u b s

    t r : S t r i n g ; S t r : S t r i n g ) : I n t e g e r - поиск первого вхождения символа или строки. I n s e r t ( S o u r c e : S t r i n g ; v a r S : S t r i n g ; I n d e x : I n t e g e r ) : I n t e g e r - вставка строки(символа) в строку начиная с N элемента D e l e t e ( v a r S : S t r i n g ; I n d e x , C o u n t : I n t e g e r ) - удаление из строки COUNT символов начиная с INDEX позиции C o p y ( S : S t r i n g ; I n d e x , C o u n t : I n t e g e r ) : S t r i n g - копирует из строки подстроку начиная с INDEX номера на COUNT количество символов
  18. Задача 1: Создать приложение, предлагающее пользователю ввести строку, определяющее количество

    символов в ней и выводящее результат, согласуя окончания различных падежей слова "символ" с числом симоволов, например: "В тексте 1 символ", "В тексте 32 символа", "В тексте 47 символов".
  19. Код программы b e g i n N : =

    L e n g t h ( E d i t 1 . T e x t ) ; / / О п р е д е л и т ь ч и с л о с и м в о л о в L a b e l 2 . C a p t i o n = ' В т е к с т е ' ; i f N > 2 0 t h e n N : = N m o d 1 0 ; / / В ы т а щ и т ь п о с л е д н ю ю ц и ф р у c a s e N o f 1 : S : = ' с и м в о л ' ; 2 . . 4 : S : = ' с и м в о л а ' ; 0 , 5 . . 2 0 : S : = ' с и м в о л о в ' ; e n d ; L a b e l 2 . C a p t i o n : = L a b e l 2 . C a p t i o n + I n t T o S t r ( L e n g t h ( E d i t 1 . T e x t ) ) + s ; e n d ;
  20. Задача 2 Создать приложение, которое предлагает ввести строку, а затем

    предлагает выбрать, какие символы будут заменены. Вариант по замене символов должен быть в виде CheckBox'ов, то есть если CheckBox в положение Checked(стоит галочка) значит условие обрабатывается, иначе игнорировать. А также вывести количество измененных символов
  21. Код программы v a r S : s t r

    i n g ; / / н а ш а с т р о к а N : i n t e g e r ; / / к о л и ч е с т в о и з м е н е н н ы х с и м в о л о в b e g i n N : = 0 ; / / В с е г д а о б н у л я й п е р е м е н н ы е ! ! E d i t 3 . T e x t : = ' ' ; E d i t 2 . T e x t : = ' ' ; S : = E d i t 1 . T e x t ; / / З а п о м и н а е м с т р о к у I f C h e c k B o x 2 . C h e c k e d t h e n w h i l e P o s ( ' a ' , S ) > 0 d o / / п о к а в т е к с т е е с т ь с и м в о л ' a ' b e g i n N : = N + 1 ; / / Д о б а в л я е м и з м е н е н и е S [ P o s ( ' a ' , S ) : = ' б ' ; / / З а м е н и т ь с и м в о л ' а ' н а ' б ' e n d ; i f C h e c k B o x 3 . C h e c k e d t h e n w h i l e P o s ( ' ' , S ) > 0 d o / / П о к а в с т р о к е е с т ь п р о б е л ы b e g i n N : = N + 1 ; S [ P o s ( ' ' , S ) ] : = ' - ' ; / / з а м е н и т ь п р о б е л н а - e n d ; i f C h e c k B o x 1 . C h e c k e d t h e n E d i t 3 . T e x t : = I n t T o S t r ( N ) ; / / в ы в е с т и к E d i t 2 . T e x t : = s ; / / в ы в е с т и р е з у л ь т а т e n d ;
  22. Самое важное за сегодня! Весь код должен быть в системе

    контроля версий Все вопросы вы можете задавать в личные сообщения или на email [email protected] Помощь с кодом только в системе контроля версий!!