ToString:
(http://pascalabc.net/stati-po-pascalabc-net/osobennosti-yazika/17-vse-tipy-klassy)
а вообще это метод, который переводит число (целое и дробное) в строковую переменную. я например такое часто использую для отладки - вывожу значение переменной в заголовок окна
window.caption:=i.tostring;
ToArray:
(ссылки на точное объяснение нет)
"мне нужно каждую цифру в отдельный элемент массива" "типа Integer"
var s:string; a:array[1..255]of integer; j,n:integer;
begin
write('string? '); readln(s); n:=length(s);
for j:=1 to n do a[j]:=ord(s[j])-48;
for j:=1 to n do write(a[j]:2); readln
end.
ConvertAll(ch->ch.ToDigit):
Всё, что нашёл - (http://www.cyberforum.ru/pascalabc-net/thread2536389.html)
A.Println:
print - такого нет, есть write/writeln
$ в начале строки:
Вообще не знаю, что это такое ¯\_(ツ)_/¯
Объяснение:
Это методы языка PascalABC.NET. Они часто строятся в цепочку, соединяясь точками и тогда результат работы одного передается другому.
Вы привели код неполностью. ToString - это метод (не знаете что это, считайте что функция), который преобразует то, что стоит перед ним в строку символов. Например, если написать 13524703.ToString, на выходе получится строка '13524703'. Надеюсь, Вы понимаете, чем строка отличается от числа'.
ToString.ToArray передаст созданную строку методу ("функции") ToArray. Она разделит строку на отдельные символы и создаст из них массив нужного размера. В первый элемент массива попадет первый символ строки, во второй - второй и т.д. И мы получим (для нашего примера) массив из 8 элементов, содержащий символы '1', '3', '5', '2', '4', '7', '0', '3'.
Метод ConvertAll преобразует все элементы массива по указанному правилу и строит новый массив. В качестве правила казано так называемая лямбда-функция (не знаете что это - и не заморачивайтесь). Важно понимать суть. Суть такова, что каждый элемент, который условно тут назвали именем ch, преобразуется посредством ch.ToDigit, т.е. переводится из символа в однозначное число. И в результате мы получим массив, каждый элемент которого будет цифрой исходного числа (1, 3, 5, 2, 4, 7, 0, 3). С ними уже можно работать как с числами.
Итак вся цепочка
'13524703'.ToString.ToArray.ConvertAll(ch->ch.ToDigit) породила массив типа integer, содержащий в каждом элементе цифру исходного числа.
Теперь A.Println. Это тоже метод. Можно писать Writeln(A), Println(A) или A.Println. Для простых переменных любого типа разницы нет. Но есть для массивов. В PascalABC.NET можно вывести сразу целиком массив. Только Writeln(A), Println(A) выведут содержимое в квадратных скобках и через запятую [1,3,5,2,4,7,0,3], а A.Print - через пробел:
1 3 5 2 4 7 0 3
$ в начале строки - это надо строку смотреть. А вот еще есть конструкция, когда $ стоит перед строкой, т.е. $'тут что-то'.
Такая замечательнвя вещь притопала из языка C# и называется интерполированная строка. Незаменимая вещь для красивого вывода!
В общем пишем так: $'{a} бит = {a/8/1024} Кбайт' и не паримся: все, что в фигурных скобках написано, будет вычислено и встроено в строку.
Нужны еще подробности - спрашивай!
#ответ на вопрос 1
print("Первый дом.")
n1 = int(input("Количество этажей : "))
h1 = float(input("Высота комнаты : "))
print("Второй дом.")
n2 = int(input("Количество этажей : "))
h2 = float(input("Высота комнаты : "))
H1 = n1*h1
H2 = n2*h2
if H1>H2:
print("Дом первый выше чем второй дом")
elif H1<H2:
print("Дом второй выше чем первый дом")
else:
print("Высота обоих домов равна")
#ответ на вопрос 2
h = float(input("В часах : "))
m = float(input("В минутах : "))
h = h * 60
if h>m:
print("Первый отрезок времени больше")
elif m>h:
print("Второй отрезок времени больше")
else:
print("Оба равны")
#ответ на вопрос 3
a = float(input("a : "))
b = float(input("b : "))
if a/4 == b:
print("True")
else:
print("False")
#ответ на вопрос 4
a = float(input("a : "))
b = float(input("b : "))
if a >= b*4:
print("True")
else:
print("False")
#ответ на вопрос 5
a = float(input("a : "))
b = float(input("b : "))
c = float(input("c : "))
if a >= b*c:
print("True")
else:
print("False")
Объяснение: