Какво всъщност направихме досега, защо вървим в този ред и какво е важно да запомните.
a = a + 1;
теория → примери → задачи
Теорията отговаря на въпроси, които още не сте си задали. Звучи сухо и се забравя.
задачи → блъскане → теория
Когато стигнем до теорията, вие вече сте срещнали всяко нещо. Тя идва като отговор на вашия въпрос.
Ако ви е било трудно, това не е провал. Точно така работи ученето: мозъкът запомня онова, за което се е борил.
a = a + 1Твърдение, че двете страни са равни.
a = a + 1 → 0 = 1
Невъзможно. Няма такова число.
Команда: пресметни дясното, после запиши в лявото.
a беше 5 → става 6
Така е във всички езици: JavaScript, C#, Python, C…
Знакът = означава „присвои“. За сравнение „равни ли са?“ се пише === (в C# ==).
В математиката фактите важат завинаги. В програмата всеки ред се изпълнява в своя момент, отгоре надолу, и променя паметта.
Незатворени кавички, обърната скоба, буква в повече. Това се случва на всеки програмист, всеки ден, включително на най-добрите.
VSCode подчертава с червено, конзолата казва кой ред. Грешката е съобщение, не наказание.
console.log("Здравей);if (ocenka > 5) {
console.log("Отличен");console.log("Сбор: " + 5;var ime = "Ана"; Console.log(imee);
console.logvar tochki = 13; var ocenka = 2 + tochki / 20 * 4; // какво е сметнало? console.log("оценка =", ocenka); if (ocenka >= 4.5) { console.log("влязох в if-а"); }
Когато програмата не прави каквото искате, не гадайте. Отпечатайте стойностите и вижте с очите си.
Това се казва debug: търсене на грешки. Професионалистите го правят по същия начин.
{ } и ; са същите като в C#, Java, C++: преходът е лесен"5" + 3 дава "53", а "5" - 3 дава 2Езикът е само дреха. Цикълът, условието и променливата са едни и същи навсякъде.
знае наизуст как се пише всяка команда
Това все повече го правят инструментите: редакторът, документацията, AI.
разбира как трябва да работи системата и защо
Разбива проблема на стъпки, проверява, намира къде греши. Това не може да се възложи на друг.
Разделението на труда: вие мислите как да стане, аз помагам с подробностите на кода.
true / false
да / не · вкл. / изкл.
5, -3, 4.6
цели и дробни
"Здравей"
текст, редица от символи
Всичко останало е съставено от тях: масив от оценки, ученик с име и клас, 3D модел с върхове.
В if JavaScript превръща всяка стойност в true или false:
| Стойност | Става | Защо |
|---|---|---|
| 0 | false | нула = нищо |
| "" | false | празен текст = нищо |
| null, undefined | false | няма стойност |
| 5, -1, "0", " " | true | има нещо (дори текстът "0" е нещо!) |
Затова if (ime) проверява дали полето не е празно.
В JavaScript има един вид число за всичко: 5 и 4.6 са от един и същи тип. В C# са различни: int, double…
console.log(0.1 + 0.2);
// 0.30000000000000004
Компютърът пази числата в двоичен вид. Както 1/3 няма точен десетичен запис (0.333…), така 0.1 няма точен двоичен.
Затова парите и оценките закръгляме с toFixed(2).
Номерацията започва от 0. Последният символ е s[s.length - 1]. Числото отдолу е кодът на символа.
var s = "Здравей"; s.length // 7 s[0] // "З" s.toUpperCase() // "ЗДРАВЕЙ" s.includes("рав") // true s.indexOf("в") // 4
s[0] = "Х"; console.log(s); // "Здравей"
Низът не може да се променя на място. Методите връщат нов низ. При масива a[0] = … работи.
| За нас | За компютъра | Двоично |
|---|---|---|
| true / false | 1 / 0 | 1 / 0 |
| 5 | 5 | 101 |
| "A" | 65 | 1000001 |
| "Я" | 1071 | 10000101111 |
| бял цвят | 255, 255, 255 | 11111111 ×3 |
Типът е договорката как да разбираме числата. Това видяхте и при Белослава: едни и същи байтове са число, текст или цвят.
Следващата задача: напишете програма, която казва дали едно име е по-дълго от 5 букви и с коя буква започва.