Софтуерно Инженерство
Loading...
DanteSparda avatar DanteSparda 32 Точки

[Homework] C# Basics - Introduction To Programming - Problem {9}

Стигнах до 9 задача и се зачудих какво се иска от нас. Има доста начини за решение а ето за кои имам предвид:
1) С чиста логика пресмятаме, че израза 2, -3, 4, -5, 6, -7, ... завършва с  8, -9, 10, -11 и просто да ги напиша с Console.WriteLine("")
2) Да я реша като математически израз : a, b, a+2, b-2, a+4, b-4, a+6, b-6, a+8, b-8
3) Да завъртя цикъл, което няма как да го направя, но един приятел знае :D
Спрял съм се на ( 2) ) защото реших да упражня int и {} :)

Въпроса ми е накратко: Изисква ли се според вас да мислим гениални начини за решение на прости задачи или всичко е наред щом работи :D

Anonymous:
Duplicate of https://softuni.bg/forum/questions/details/34
qvorrr avatar qvorrr 3 Точки

Аз ползвах следното решение на задачата.

Ползвам цикъл for, условие и деление с остатък %.

for (int i = 2; i <= 12; i++) {

  if (i % 2 == 0) Console.WriteLine(i);// ако числото няма остатък - значи е положително
  else Console.WriteLine(-i);// ако числото има остатък 
}

2/2= остатък 0 - числото е положително

3/2= остатък 1 - числото е отрицателно

Надявам се да съм помогнал.

0
ViValDam avatar ViValDam 23 Точки

За Явор

2%2=0 - числото е четно

3%2 =1 -числото е нечетно

Нищо общо няма с положително и отрицателно - проверката с % е за четност и нечетност.

Имаш един цикъл който проверява положителните числа 2 ,3,4,5,6,7,8,9,10,11 за четност и нечетност

Ако, числото е четно го записва както си е положително , без знак ,четни са 2,4,6,8,10

Ако числото е нечетно , го записва с минус пред него , нечетни са 3,5,7,9,11

Ето това прави твоята програма. 

1
sasho.damqnov avatar sasho.damqnov 4 Точки

Според мен Явор е имал предвид, че в конзолата нечетните числа трябва да бъдат изкарани като отрицателни (с минус), а не, че са такива в действителност :)

Иначе - няма нужда i да е по-малко от 12, тъй като в случая 12 е число, не позиция. Така ще ти изкарва резултати до 12, а в условието се иска до 10.

В моето решение съм обърнал if и else, съответно в условието на if-а съм писал (k % 2 != 0).

0