私が C で書いたプログラムがあり、完璧に動作します。それを言語 C# に翻訳しようとすると、コンパイルされませんでした。scanf ("%19s" , string1);
問題は、C# が C のlikeの意味を知らないことでした。私は次のよう
に変更scanf
しました。
string read;
do
{
read = Console.ReadLine();
}
while (read.Length <= 19);
正常に動作しませんでした。それから私は試しました:それを次のように変更します:
string string1Input = Console.ReadLine();
うまく機能していましたがif
、すべての「合計」が 0 に等しくなっていたため、ステートメントはチェックされませんでした。
これは、C# に翻訳されて書かれたプログラムです。
public static class GlobalMembersAnbanisRicxvitiMnishvneloba
{
static int Main()
{
string string1 = new string(new char[20]);
sbyte a = (sbyte)'a';
sbyte b = (sbyte)'b';
sbyte g = (sbyte)'g';
sbyte X = (sbyte)'X';
sbyte i = (sbyte)'i';
sbyte H = (sbyte)'H';
sbyte V = (sbyte)'V';
etc..
int rigi;
int sum = 0;
int sum2 = 0;
int sum3 = 0;
Console.Write(" my word is:\n");
string string1Input = Console.ReadLine();
for (rigi = 0; string1[rigi] != '\0'; rigi++)
{
if (string1[rigi] == a)
{
sum3 = sum3 + 1;
sum2 = sum2 + 1;
sum = sum + 1;
}
else
if (string1[rigi] == b)
{
sum3 = sum3 + 3;
sum2 = sum2 + 2;
sum = sum + 2;
}
etc...
} /* end for*/
if (string1[rigi-1]==i)
{
sum=sum-10; sum2=sum2-10; sum3=sum3-55;
}
Console.Write("sum is:");
Console.Write("{0:D}\n", sum);
Console.Write("sum2 is:");
Console.Write("{0:D}\n", sum2);
Console.Write("sum");
Console.Write("{0:D}\n", sum3);
return 0;
}
}
プログラムの考え方は次のとおりです。
プログラムは、入力する単語の各文字に数値的な意味を与え、この数値を互いに加算します。
問題Ⅱ:作り方
if (string1[rigi-1]==i)
{
sum=sum-10; sum2=sum2-10; sum3=sum3-55;
}
仕事?