Skip to content

Commit

Permalink
немного перевел на c#
Browse files Browse the repository at this point in the history
  • Loading branch information
евгений колесников committed Jan 19, 2021
1 parent c2dc3a2 commit 8ee2b2a
Show file tree
Hide file tree
Showing 3 changed files with 109 additions and 47 deletions.
41 changes: 31 additions & 10 deletions articles/t1l1.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;"></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t1l2.md">Основные алгоритмические конструкции</a></td>
<tr></table>

# Основные понятия алгоритмизации

Expand Down Expand Up @@ -172,13 +178,22 @@

Таким образом текстовое программирование представляет собой иерархическую последовательность знаков, слов, операторов, записываемых и читаемых последовательно, как обычный текст человеческой письменности.

```kt
//Пример программы на языке Kotlin
fun main(){
print("введите температуру воздуха t: ")
val t = readLine()!!
if(t.toInt()<0) println("одеть шубу")
else println("одеть куртку")
```cs
//Пример программы на языке C#
namespace oap
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("введите температуру воздуха t: ");
var t = int.Parse( Console.ReadLine() );
if (t < 0)
Console.WriteLine("одеть шубу");
else
Console.WriteLine("одеть куртку");
}
}
}
```

Expand Down Expand Up @@ -421,7 +436,7 @@ end;
3<sup>N | 0.059 c | 58.1 мин| 6.53 лет| 3.86\*10<sup>5</sup> лет | 2.28\*10<sup>10</sup> лет
N! | 3.63 c | 7.71\*10<sup>4</sup> лет | 8.41\*10<sup>18</sup> лет | 2.59\*10<sup>34</sup> лет | 9.64\*10<sup>50</sup> лет

[Википедия: Временая сложность алгоритма](https://ru.wikipedia.org/wiki/%D0%92%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%B0)
[Википедия: Временная сложность алгоритма](https://ru.wikipedia.org/wiki/%D0%92%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C_%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D0%B0)

***
КОНТРОЛЬНЫЕ ВОПРОСЫ
Expand All @@ -438,4 +453,10 @@ end;

6. [Что такое структурное программирование? Каковы основные прнципы структурной методики построения алгоритмов? ](#q6)

[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;"></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t1l2.md">Основные алгоритмические конструкции</a></td>
<tr></table>
92 changes: 59 additions & 33 deletions articles/t1l2.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;">
<a href="../articles/t1l1.md">Основные понятия алгоритмизации</a></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t1l3.md">Логические основы алгоритмизации</a></td>
<tr></table>

# Основные алгоритмические конструкции

Expand Down Expand Up @@ -26,16 +33,23 @@

![](../img/t1l2p2.png)

```kt
fun main(){
println("Enter a, b, c, d: ")
val a = readLine()!!
val b = readLine()!!
val c = readLine()!!
val d = readLine()!!
val m = a.toInt()*d.toInt()
val n = b.toInt()*c.toInt()
println("m=$m, n=$n")
```cs
namespace oap
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Enter a, b, c, d: ");
var a = int.Parse(Console.ReadLine());
var b = int.Parse(Console.ReadLine());
var c = int.Parse(Console.ReadLine());
var d = int.Parse(Console.ReadLine());
var m = a * d;
var n = b * c;
Console.WriteLine($"m={m}, n={n}");
}
}
}
```

Expand All @@ -58,19 +72,19 @@ fun main(){

В приведенном алгоритме присутствуют команды ввода:

```kt
val a = readLine()!!
val b = readLine()!!
val c = readLine()!!
val d = readLine()!!
```cs
var a = int.Parse(Console.ReadLine());
var b = int.Parse(Console.ReadLine());
var c = int.Parse(Console.ReadLine());
var d = int.Parse(Console.ReadLine());
```

В блок-схеме команда ввода записывается в параллелограмме — блоке ввода-вывода. При выполнении данной команды процессор прерывает работу и ожидает действий пользователя. Пользователь должен набрать на устройстве ввода (клавиатуре) значения вводимых переменных и нажать на клавишу ввода Enter. Обычно с помощью команды ввода присваиваются значения исходных данных, а команда присваивания используется для получения промежуточных и конечных величин.

Полученные компьютером результаты решения задачи должны быть сообщены пользователю. Для этих целей предназначена команда вывода:

```kt
println("m=$m, n=$n")
```cs
Console.WriteLine($"m={m}, n={n}");
```

С помощью этой команды результаты выводятся на экран или на устройство печати на бумагу.
Expand Down Expand Up @@ -130,18 +144,23 @@ Y = Z | 2 | 1 | 1

![](../img/t1l2p3.png)

Все используемые в этой программе величины вещественного типа.

```kt
fun main(){
println("Введите a, b, c:")
val a = readLine()!!.toInt()
val b = readLine()!!.toInt()
val c = readLine()!!.toInt()
val d = b*b-4*a*c
val x1 = (-b+sqrt(d.toFloat()))/(2*a)
val x2 = (-b-sqrt(d.toFloat()))/(2*a)
println("x1=$x1, x2=$x2")
```cs
namespace oap
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите a, b, c: ");
var a = int.Parse(Console.ReadLine());
var b = int.Parse(Console.ReadLine());
var c = int.Parse(Console.ReadLine());
var d = b * b - 4 * a * c;
var x1 = (-b + Math.Sqrt(d)) / (2 * a);
var x2 = (-b - Math.Sqrt(d)) / (2 * a);
Console.WriteLine($"x1={x1}, x2={x2}");
}
}
}
```

Expand Down Expand Up @@ -202,8 +221,8 @@ fun main(){

![](../img/t1l2p5.png)

```kt
if(условие) {серия1}
```cs
if (условие) {серия1}
else {серия2}
```

Expand Down Expand Up @@ -405,4 +424,11 @@ Dia (бесплатная)
3. [Циклический алгоритм](#q3)
4. [Вспомогательные алгоритмы и процедуры](#q4)

[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;">
<a href="../articles/t1l1.md">Основные понятия алгоритмизации</a></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t1l3.md">Логические основы алгоритмизации</a></td>
<tr></table>
23 changes: 19 additions & 4 deletions articles/t1l3.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;">
<a href="../articles/t1l2.md">Основные алгоритмические конструкции</a></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t2l1.md">Языки программирования</a></td>
<tr></table>

# Логические основы алгоритмизации
*Логика* – это наука о формах и способах мышления (первые учения – Древний Восток).
Expand Down Expand Up @@ -288,7 +295,8 @@ inv(А or В) = inv(А) and inv(В)
1 | 1 | 0 | 1 | 1
1 | 1 | 1 | 1 | 1

***
---

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. [Основные формы мышления.](#q1)
Expand All @@ -299,6 +307,13 @@ inv(А or В) = inv(А) and inv(В)
6. [Законы логических операций](#q6)
7. [Проверка законов построением таблиц истинности](#q7)

[Просто и с примерами](https://ido.tsu.ru/schools/physmat/data/res/informatika3/)
[Просто и с примерами]: https://ido.tsu.ru/schools/physmat/data/res/informatika3/

[содержание](/readme.md)
<table style="width: 100%;">
<tr><td style="width: 40%;">
<a href="../articles/t1l2.md">Основные алгоритмические конструкции</a></td>
<td style="width: 20%;">
<a href="../readme.md">Содержание</a></td>
<td style="width: 40%;">
<a href="../articles/t2l1.md">Языки программирования</a></td>
<tr></table>

0 comments on commit 8ee2b2a

Please sign in to comment.