今日の課題では、文字列の大文字と小文字を交互に切り替えるプログラムまたは関数を作成する必要があります。ただし、アルファベット以外の文字は無視する必要があります。これは、すべてのアルファベット文字の大文字と小文字が前後のアルファベット文字と異なる必要があることを意味します。これは、たとえば他のすべての文字を大文字にするよりも少し複雑です。次のような文字列を取る場合
hello world
そして、他のすべての文字を大文字に変換すると、次のようになります:
hElLo wOrLd
ご覧のとおり、小文字のo
後に小文字が続きw
ます。これは無効です。代わりに、スペースを無視して、次の結果を得る必要があります。
hElLo WoRlD
アルファベット以外の文字はすべて同じにしておく必要があります。一貫して交互に出力される限り、出力は大文字でも小文字でも開始できます。これは、以下も許容可能な出力であることを意味します。
HeLlO wOrLd
プログラムは、入力の大文字と小文字に関係なく動作するはずです。
入力文字列には印刷可能なASCIIのみが含まれるため、印刷できない文字、改行、またはUnicodeを心配する必要はありません。あなたの提出物は、完全なプログラムまたは機能のいずれかであることができます、そして、あなたはどんな合理的な形式ででも入力と出力をするかもしれません。たとえば、関数の引数/戻り値、STDIN / STDOUT、ファイルの読み取り/書き込みなど。
例:
ASCII -> AsCiI
42 -> 42
#include <iostream> -> #InClUdE <iOsTrEaM>
LEAVE_my_symbols#!#&^%_ALONE!!! -> lEaVe_My_SyMbOlS#!#&^%_aLoNe!!!
PPCG Rocks!!! For realz. -> PpCg RoCkS!!! fOr ReAlZ.
This example will start with lowercase -> tHiS eXaMpLe WiLl StArT wItH lOwErCaSe
This example will start with uppercase -> ThIs ExAmPlE wIlL sTaRt WiTh UpPeRcAsE
A1B2 -> A1b2
これはcode-golfであるため、標準の抜け穴が適用され、バイト単位の最短回答が勝ちます!
cowsay