C# で次のパターンを出力する必要があります -
A B C D E F G F E D C B A
A B C D E F E D C B A
A B C D E D C B A
A B C D C B A
A B C B A
A B A
A
C# では文字入力が機能しないため、C ではパターンを出力できますが、C# では出力できません。変換してみましたが、正しく変換できず、for ループの問題に直面しています。同等の C# コードの書き方を教えてください。前もって感謝します。
Cコードは次のとおりです。
#include<stdio.h>
#include<conio.h>
int main()
{
char ch,r,c;
int sp;
printf("\nEnter last character of triangle : ");
scanf("%c",&ch);
if(ch>='a' && ch<='z')
ch=ch-32;
printf("\n");
for(r='A'; 'A'<=ch; ch--,r++)
{
for(sp=r; sp>'A'; sp--)
printf(" ");
for(c='A'; c<=ch; c++)
printf("%c",c);
for(c=ch-1; c>='A'; c--)
printf("%c",c);
printf("\n");
}
getch();
return 0;
}
編集済み
私のC#コード:
public class Pascal_Triangle
{
public void printPascal()
{
char ch, r, c;
int sp;
Console.WriteLine("\nEnter last character of triangle : ");
ch = Convert.ToChar(Console.ReadLine());
if (ch >= 'a' && ch <= 'z')
ch = Convert.ToChar(ch - 32);
for (r = 'A'; 'A' <= ch; ch--, r++)
{
for (sp = r; sp > 'A'; sp--)
Console.WriteLine(" ");
for (c = 'A'; c <= ch; c++)
Console.Write(c);
for (c = Convert.ToChar(ch - 1); c >= 'A'; c--)
Console.Write(c);
}
Console.ReadLine();
}
}
私が得ている出力: