Compare commits

..

29 Commits

Author SHA1 Message Date
Костя 16f790a9d9 add beginner code with 2025-07-02 11:23:36 +03:00
Костя ca5807d864 add new 2025-07-02 11:17:13 +03:00
Костя 8cd0772025 add fuction 2025-07-02 11:09:30 +03:00
Костя 507e1f5106 add comment 2025-07-02 10:22:01 +03:00
Костя 0773b73f34 adde new code lesson 2025-07-01 12:59:21 +03:00
Костя 450c6d746b commit 1 2025-07-01 12:56:43 +03:00
Костя 499b3c97bc add FINAL Less 1_4 2025-07-01 12:38:42 +03:00
Костя 6e22791d14 add corrected the comment 2025-07-01 12:21:19 +03:00
Костя 56ae848aee add new result with whitespace betwin 1 and 2tw elements 2025-07-01 12:13:43 +03:00
Костя 706feb8bd6 add new result without FIRST element 2025-07-01 12:08:39 +03:00
Костя 1139f8acbd add static result 2025-07-01 11:26:12 +03:00
Костя 30be821446 add console.log(`============`); 2025-07-01 08:08:42 +03:00
Костя d10df6e533 add new experiment 2025-06-30 19:56:25 +03:00
Костя 417acb8e4b add 1 2025-06-30 18:37:33 +03:00
Костя 5bef125273 add start lesson 1_4 2025-06-30 14:33:52 +03:00
Костя 3071bb4746 add commment for lesson 2025-06-30 14:11:54 +03:00
Костя 94e33222b2 add start lesson 1.4 2025-06-30 14:10:02 +03:00
Костя 7e7301b1ab add start 1.4. X-MAS TREE 2025-06-29 10:48:07 +03:00
Костя abc5eecbe6 add 2025-06-29 10:39:01 +03:00
Костя b3d2bbb9da add lesson IPAM .3. ANOTHER TRIANGLE 2025-06-29 10:09:51 +03:00
Костя edfa057838 test 1 2025-06-27 15:02:55 +03:00
Костя 68be4c01bf add 2025-06-27 13:27:09 +03:00
Костя b0eb9c869a add index +1 2025-06-27 13:20:23 +03:00
Костя 03c74d8769 add 2025-06-27 13:15:33 +03:00
DESKTOP-8HAFCLV\Yugr 5509a95a6e added cycle while 2025-06-27 13:58:54 +04:00
DESKTOP-8HAFCLV\Yugr 5293c1ee31 Added debug launch 2025-06-27 13:17:16 +04:00
Костя 7f67cd98ca add new value for chisloP 2025-06-26 20:39:31 +03:00
DESKTOP-8HAFCLV\Yugr 16cc913cad Lesson 1.2 complete 2025-06-26 21:11:50 +04:00
DESKTOP-8HAFCLV\Yugr 4f1310bbcf Added input function 2025-06-26 16:31:26 +04:00
6 changed files with 150 additions and 23 deletions

22
.vscode/launch.json vendored Normal file
View File

@ -0,0 +1,22 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}\\src\\index.ts",
"outFiles": [
"${workspaceFolder}/**/*.js"
],
"preLaunchTask": "build_backend"
}
]
}

12
.vscode/tasks.json vendored Normal file
View File

@ -0,0 +1,12 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build_backend",
"type": "npm",
"script": "build",
"path": "/",
"problemMatcher": []
}
]
}

View File

@ -1,7 +1,3 @@
// ########################## УЧЕБНЫЙ ТЕКСТ ############################################################
//******************************************************************************************************
interface People { interface People {
name: string; name: string;
age: number | undefined; age: number | undefined;
@ -44,12 +40,6 @@ class ProcessingPeoples implements PeopleLocation {
} }
} }
let str: string = 'test text';
let proc1 = new ProcessingPeoples(str)
console.log(proc1)
proc1.name = 'new test'
console.log(proc1)
class ProcessingPeoplesExt extends ProcessingPeoples { class ProcessingPeoplesExt extends ProcessingPeoples {
isActive: boolean = false; isActive: boolean = false;
@ -74,16 +64,13 @@ class Duck {
} }
} }
let Utka: Duck = new Duck();
Utka.log();
interface Eateable { interface Eateable {
eat(): void; //пустота, функция ничего не принимает и не возвращает. eat(): void;
} }
class GreyDuck extends Duck implements Eateable{ //наследоваться можно от другого класса только один раз, но!! реализация интерфейсов может быть не ограниченно количество раз class GreyDuck extends Duck implements Eateable{
constructor() { constructor() {
super(); // в данном примере, если используется конструктор и при этом этот конструктор наслеедуется от родителя, то мы обязаны вызывать конструктор родителя. super();
this.type = 'GreyDuck' this.type = 'GreyDuck'
} }
override log(){ override log(){
@ -99,7 +86,6 @@ class RedDuck extends Duck implements Eateable {
constructor() { constructor() {
super(); super();
this.type = 'RedDuck' this.type = 'RedDuck'
console.log(`Object created ${this.type}`)
} }
eat(): void { eat(): void {
console.log("I'm eat"); console.log("I'm eat");
@ -117,9 +103,6 @@ let array: Eateable[] = [
duck2 duck2
]; ];
let result = array[0]; //мы можем проверить содержание массива с именем array. в квадратных скобках мы указали ноль = это первый эелемент массива.
console.log(`результат содержимого массива${JSON.stringify(result)}`); //вывод на экран
for (let item of array) { for (let item of array) {
item.eat(); item.eat();
} }
@ -133,5 +116,95 @@ for (let item of array2) {
item.log(); item.log();
} }
array2.filter(item => "eat" in item); //тестирование не относится к тексту выше array2.filter(item => "eat" in item);
//Обучение ЦИКЛАМ
//lesson 1.5 SUM OF NUMBERS
function CalculateRectangleArea(sideA: number, sideB: number) : number {
return sideA * sideB;
}
//Virtual console
let chisloOne: string = '2';
let chisloTwo: string = 'A';
//Solution
let sideA = Number.parseInt(chisloOne, 10);
let sideB = Number.parseInt(chisloTwo, 10);
// && - AND
// || - OR
// !
if (Number.isNaN(sideA) || sideA <= 0 ){
console.log(`Your first value is invalid: ${sideA}`)
}
if (Number.isNaN(sideB) || sideB <= 0){
console.log(`Your second value is invalid: ${sideB}`)
}
else{
console.log(`Area of rectangle is: ${CalculateRectangleArea(sideA, sideB)}`);
}
//## ЗАДАЧА ##
//Если выписать все натуральные числа меньше 10, кратные 3, или 5, то получим 3, 5, 6 и 9.
//Сумма этих чисел будет равна 23.
//Напишите программу, которая выводит на экран сумму всех чисел меньше 1000, кратных 3, или 5.
//#1 натуральное число от 1 до 10 (числа которые
//#2 Натуральные числа (от лат. naturalis — «естественный») — числа, возникающие естественным образом при счёте. Примеры: 1, 2, 3, 4, 5, 6, 7 и)
//#3 Числа, кратные 3, или 5 — это числа, которые делятся на 3 или на 5 без остатка.
function SUMMA (chislo: number){
let result = 5;
console.log(`summa of numbre <1000: ${result}`);
}
/*
function DrawLine(count: number, countP: number){ //рисуем треугольник из звездочек
const minimalString = '*';
const minimalP = ' ';
let result = minimalP.repeat(countP) + minimalString.repeat(count) //с начала рисуем пробелы (countP) а потом зведочки
console.log(result);
}
function DrawTriangle(height: number, chisloP: number) { //высота - это сколько рядов отрисует
for(let index = 1; index <= height; ){
DrawLine(index * 2 - 1, chisloP - index ); // вызываем функцию DrawLine внутри цикла, chisloN - нужно иметь МАКС значение как в первом уроке
index = index +1;
//console.log(height);
}
}
rl.question('Enter something', value => {
console.log(`Hi ${value}`);
rl.close;
});
*/

19
src/input.ts Normal file
View File

@ -0,0 +1,19 @@
import readline from 'node:readline';
export function ConsoleInput(text: string): string {
let result: string = '';
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
rl.question('Enter something:', value => {
result = value;
rl.close;
});
return result;
}

View File

@ -21,6 +21,7 @@
"strict": true, /* Enable all strict type-checking options. */ "strict": true, /* Enable all strict type-checking options. */
"noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */ "noImplicitAny": true, /* Enable error reporting for expressions and declarations with an implied 'any' type. */
/* Completeness */ /* Completeness */
"skipLibCheck": true /* Skip type checking all .d.ts files. */ "skipLibCheck": true, /* Skip type checking all .d.ts files. */
"sourceMap": true
} }
} }

File diff suppressed because one or more lines are too long