HM021 真假取反
HM021 真假取反
来源: 第 21 集 运算符-逻辑运算符-非
难度: 入门
时间限制: 1s
空间限制: 64MB
题目描述
逻辑运算符一共三种:非 !、与 &&、或 ||。本问题只处理**逻辑非**。
! 是一个叹号,作用是取反:表达式为真则变成假,为假则变成真。六个字记:**真变假,假变真**。
在 C++ 里,**只要不是 \(0\) 都当作真**,\(0\) 当作假。因此对整数 \(10\) 取反:\(10\) 是真,!10 得到假,输出 \(0\)。再取一次反:!!10 负负得正,又变回真,习惯上用 \(1\) 表示真。
对每个整数 \(x\),请同时输出一次取反和两次取反的结果。
输入格式
第一行一个整数 \(n\)(\(1 \le n \le 100\))。
接下来一行 \(n\) 个整数 \(x_i\)(\(-10^9 \le x_i \le 10^9\))。
输出格式
\(n\) 行,每行两个整数,用一个空格隔开:!x 的值,以及 !!x 的值。每个值只能是 \(0\) 或 \(1\)。
样例
输入 #1
3
10 0 -3
输出 #1
0 1
1 0
0 1
输入 #2
2
1 2
输出 #2
0 1
0 1
说明
\(0\) 为假,!0 为真(输出 \(1\)),!!0 又变回假(输出 \(0\))。非零整数不论正负都是真。两次取反在结果上会变回「是不是非零」,一般不必连写两个叹号。
信息
- ID
- 1020
- 难度
- (无)
- 分类
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者