program n_1; type nazw = array[0..9] of String[15]; const ed : nazw = ('ноль','один','два','три','четыре','пять','шесть','семь','восемь','девять'); des: nazw = ('','десять','двадцать','тридцать','сорок','пятьдесят', 'шестьдесят','семьдесят','восемьдесят','девяносто'); sot: nazw = ('','сто','двести','тристо','четыресто','пятьсот','шестьсот','семьсот','восемьсот','девятьсот'); dd : nazw = ('','одинадцать','двенадцать','тринадцать','четырнадцать','пятнадцать', 'шестнадцать','семнадцать','восемьнадцать','девятнадцать'); var s,d,e,x : Integer; st : String; Begin Write('Введите число [0..1000] :'); Readln(x); if x=1000 then st:='тысяча' else begin s:= x div 100; x:=x mod 100; st:=sot[s]; d:= x div 10; e:=x mod 10; if (d=1) and (e<>0) then st:=st+dd[e] else st:=st+des[d]+ed[e]; end; writeln(st); End.
оба ответа подходят в русском языке
но логичнее нет
просто у нет в русском 2 функции: согласие с отрицанием и отрицание отрицания
ответ Нет, на рисунке белая скатерть
(я выразил отрицание к вопросу)
словом нет можно выразить и отрицание и согласие
да здесь вообще не подходит его не рассматривает
у нет 2 варианта либо согласие с отрицанием - Нет, скатерть не белая. Либо отрицание вопроса - нет, белая.
при этом первый вариант не верный так как скатерть белая, то есть единственно верный это - Нет, скатерть белая (отрицание вопроса)