1. есть число n. пускай n=123. что будет, если разделить его на 10? получится 12,3. то есть 12 - целая часть, а 3 - остаток. далее снова делим на 10. 1,23. и в последний раз: 0,123. целая часть =0. на этом останавливаемся. а сколько раз выполнили деление? 3. вот и ответ. теперь запишем на паскале: как видно из вышенаписанного, нужно продолжать выполнять действия, пока целая часть не равна 0. то есть while n> 0 do и у нас есть некоторый счетчик итераций, значение которого и будет являться ответом. а тело цикла: n div 10 (целочисленное деление) inc(k) (увеличение счетчика) вторая: как я понял, нужно просто вывести на экран то, что должно получиться? нужно в цикле пройти по каждому символу. если он равен "*" (if s[i] = '*' then), ничего не делать. иначе вывести его два раза (write(s[i], добавить данные в начало файла нельзя. нужно либо записывать в новый, либо перезаписывать исходный (предварительно считав все в память)
Объяснение:
V - это знак "ИЛИ"
& - знак "И"
Действия тут выполняются как в математике:
Сначала умножение (знак &), потом сложение (знак V)
Ну или сначала в скобках действия выполняются.
Для этого есть специальная таблица:
0 v 0 = 0
0 v 1 = 1
1 v 0 = 1
1 v 1 = 1
0 & 0 = 0
0 & 1 = 0
1 & 0 = 0
1 & 1 = 1
2)
(((1 v 0) v 1) v 1)
1 v 0 = 1
1 v 1 = 1
1 v 1 = 1
ответ: 1
7)
((0 & 0) v 0) & (1 v 1)
0 & 0 = 0
0 v 0 = 0
1 v 1 = 1
0 & 1 = 0
ответ: 0
9)
((1 & A) v (B & 0)) v 1
Начнём со второй скобки:
B & 0 = 0 в любом случае. Остаётся:
((1 & A) v 0)) v 1
Если A = 1, то:
1 & 1 = 1
1 v 0 = 1
1 v 1 = 1
Если A = 0, то:
1 & 0 = 0
0 v 0 = 0
0 v 1 = 1
ответ: 1 в любом случае, даже можно было не решать, так как в конце стоит " v 1 " - это значит, что в любом случае ответ будет 1