101010 + 1110 = 111000
1010 + 1111 = 11001
1000 + 1011 = 10011
Импликацию часто по-другому называют "Следование".
Т.е. из выражения a следует выражение b.
Основные правила импликации, где 0 - ложь, 1 - истина.
Импликация ложна тогда и только тогда, когда из истины следует ложь.
А теперь так, как когда-то объясняли мне:
1) 1->1 = 1
Из истины следует истина. То есть из истинного факта (а) следует (или же мы делаем) справедливый истинный вывод(b). Все в порядке. Справедливо. Получаем 1 (истину) после операции импикации.
2) 0->1 = 1
Из неправильного высказывания (a) мы делаем правильный вывод(b). С этим тоже все в порядке, множество научных открытий делалось по принципу "из ошибочного суждения - верная теория". Бывает. Справедливо. Получаем истину.
3) 0->0 = 1
Из ложного высказывания (a) - ложные "выводы"(b) , тоже все в порядке. Логично, что из одной "лжи", у нас вторая "ложь". Справедливо. Получаем иситну.
4) 1->0 = 0
Из истинного высказывания (a) получаем ложное высказывание (b). Т.е. мы взяли и переврали истину непонятно как. Нехорошо и не справедливо. Получаем ложь:(
Если остались вопросы, или вообще никак не помогла - в комментарии:)
Program PR1;
uses crt;
var skv,skr:real;
a,r:integer;
Begin
clrscr;
writeln('Введите сторону квадрата');
readln(a);
writeln('Введите радиус круга');
readln(r);
skv:=sqr(a);
skr:=pi*sqr(r);
if skv>skr then writeln('Площадь квадрата >')
else writeln('Площадь круга>');
end.
<em>// PascalABC.NET 3.3, сборка 1547 от 07.10.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var a:=ReadlnString('Введите строку символов:').ToCharArray;
// Теперь у нас есть исходный массив символов, а для работы нужна строка!
a:=a.JoinIntoString('').RegexReplace('\([^\(\)]+\)','').ToArray;
a.Println
end.
<u>Пример</u>
Введите строку символов: 2+3(4+1)+2(x-1)(x-2)+a
2+3+2+a
1) 1011011
2) 4536
3) 122002
4) E2D
Извини, надеюсь, не поздно...)