Цел на урока: Да използваме условен оператор If…Then в наши програми.

if-18years

Оператори за управление хода на програмата. До  сега разглеждахме по-статични задачи, в които предприемахме действия само чрез натискане на бутон. В този урок ще се занимаваме с управление хода на програмата. Т.е. програмата ни да реагира по различен начин в зависимост от това дали някакви условия са изпълнени или не. Това се използва много често в програмирането и ние всички сме го виждали. Например когато отворим Facebook, ако сме въвели потребителско име и парола ни изпраща на страницата на нашия профил, а ако не сме ги въвели правилно – на страницата за вход, където трябва да въведем отново потребителско име и парола. Или когато имаме списък с песни – в Winamp, YouTube или друга музикална програма има бутон Shuffle, който ако е маркиран песните от списъка се пускат в разбъркан ред, а ако не е маркиран се пускат последователно, както са подредени.

ifelse-facebook   if-credentials

 

 

 

 

 

 

 

Нов материал:

  1. Условен оператор If: програмата реагира по различен начин в зависимост от това изпълнено ли е дадено условие.
  2. Синтаксис:

If (условие)

{

<код1>

}

Else

{

<код 2>

}

Примерна задача: Да се направи картинка (вратар) да се движи чрез 2 таймера нагоре и надолу. Първо тръгва надолу и като стигне края на формата – се връща нагоре.

private void timer1_Tick(object sender, EventArgs e)
{
  pictureBox2.Top = pictureBox2.Top + 4;
  if (pictureBox2.Top > 300)
  {
    timer1.Enabled = false;
    timer2.Enabled = true;
  }
}

Bounds.IntersectsWith() – проверка дали 2 контроли са се сблъскали
Примерна задача 2: Да се напише програма, която прави, така че 2 коли се движат една срещу друга и като се сблъскат да спират и да изписваме в етикет “It is car crash”.
car-crash

private void timer1_Tick(object sender, EventArgs e)
 {
   pictureBox1.Left = pictureBox1.Left + 10;
   pictureBox2.Left = pictureBox2.Left - 10;
   if (pictureBox1.Bounds.IntersectsWith(pictureBox2.Bounds))
   {
     timer1.Enabled = false;
     label1.Text = "It is car crash!";
   }
 }

Задача за домашно:
Да се направи програма “светулка” – картинка, която се появява и изчезва (премигва). Като в същото време се движи нагоре-надолу по формата.
*Да се направи картинката да обикаля: тръгва нагоре, след това наляво, след това надолу, след това надясно и така се повтаря до безкрай.
Задачи за самостоятелнa работа:

  1. Да се движи картинка нагоре и надясно (например ракета) и като стигне края на формата да се връща от начало.
  2. Да се направи картинка (волейболист) да „обикаля” – да се движи наляво-надясно.