はじめに 条件分岐はプログラミングの基本です。 しかし、複雑な条件分岐が出てくると非常にコードが読みにくくなります。 さらに、その複雑な条件が unless と組み合わされていたりすると、ぱっと理解するのが非常に困難になります。 そこで、この記事では複雑な unless の条件を攻略する方法を説明します。 質問: "unless person.married? && !person.rich?" が真になるケースは? ifとunless たとえば以下のコードは「personが結婚していたら'Yo!'と声をかける」コードです。
![ド・モルガンの法則でunlessのややこしい条件をifに読み替えよう - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/27b5b9e1fee1ecaa9462cfeb804b2545d6e5e8bb/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgzJTg5JUUzJTgzJUJCJUUzJTgzJUEyJUUzJTgzJUFCJUUzJTgyJUFDJUUzJTgzJUIzJUUzJTgxJUFFJUU2JUIzJTk1JUU1JTg5JTg3JUUzJTgxJUE3dW5sZXNzJUUzJTgxJUFFJUUzJTgyJTg0JUUzJTgyJTg0JUUzJTgxJTkzJUUzJTgxJTk3JUUzJTgxJTg0JUU2JTlEJUExJUU0JUJCJUI2JUUzJTgyJTkyaWYlRTMlODElQUIlRTglQUElQUQlRTMlODElQkYlRTYlOUIlQkYlRTMlODElODglRTMlODIlODglRTMlODElODYmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWEzYjc0N2YxMzE1NWY1ZjY1M2NiZGYxZDAyMmRhZjcz%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwam5jaGl0byZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjRlMjg0OGE0MDdiMGU0MDE5OWU2NTllYTM3MWUyZjM%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D3d51444340d2268e1419e449ff3b6503)