Объяснение:
Достаточно странное задание.
¬¬X = X
Попробуем доказать равенство методом от противного :
Пусть ¬¬X ≠ X:
Рассмотрим левую часть : ¬¬X ⇔ ¬(¬X)Перепишем это уравнение: ¬(¬X) ≠ X ( по идее это уже можно назвать док-вом)Подставим простое число 1 (чтобы доказать равенство в числах): ¬(¬1) ≠ 1 ⇔ ¬(0) ≠ 1 ⇔ 1 ≠ 1Получившееся выражение ( 1 ≠ 1 ) не верно , ⇒ ¬¬X = x , ч.т.д
Можно более простым смотря что от вас хотят увидеть) :
Пусть ¬¬X = X:
Преобразуем выражение : ¬¬X = X ⇔ ¬(¬X) = XПрименим инверсию к обеим частям : ¬X = ¬XПолучившееся выражение ( ¬X = ¬X ) верно , ч.т.д
Ну или сразу применить инверсию ко всему выражению (Идея взята у парня в комментариях к вопросу):
¬(¬¬X) = ¬X ⇔ ¬X = ¬X , ч.т.д
#include <stdafx.h> #include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL,"RUS"); char str[] = "манрра, фр а алвл в во вовлл."; int s = 0, i = 0, n = 0, u = 0; int j; for(j = 0; str[j]; j++){ if(str[j] == 'е') s++; if(str[j] == 'е') i++; n++; if(str[j] == 'е') u++; break; } if(s == 1 && i == 1 && n == 1 && u == 1 ) printf("\n OK"); else printf("\n FAIL"); return 0; }
честно, я не знаю, вот оригинал, если нужно
#include <stdafx.h> #include <stdio.h> #include <locale.h> int main() { setlocale(LC_ALL,"RUS"); char str[] = "манрра, фр а алвл в во вовлл."; int s = 0, i = 0, n = 0, u = 0; int j; for(j = 0; str[j]; j++){ if(str[j] == 'ф') s++; if(str[j] == 'а') i++; if(str[j] == 'й') n++; if(str[j] == 'л') u++; if(str[j] == '.') break; } if(s == 1 && i == 1 && n == 1 && u == 1 ) printf("\n OK"); else printf("\n FAIL"); return 0; }