Уровень C. Напишите программу, которая вычисляет произведение двух введённых целых чисел, не используя операцию произведения.
Пример:
Введите числа:
3 2
Произведение: 6
Введите числа:
-3 2
Произведение: -6
Введите числа:
3 -2
Произведение: -6
Введите числа:
-3 -2
Произведение: 6
Уровень C. Для начала нужно вспомнить, чем можно заменить произведение .
Основная сложность этой программы будет заключена не в вычислении значения произведения, а определении его знака, поскольку к целым числам относятся и положительные, и отрицательные числа.
Необходимо описать несколько переменных целочисленного типа, в которых нужно будет хранить следующие величины:
• Два введенных целых числа;
• Конечное количество повторений, которое должно совпадать с абсолютным значением второго числа, т.е. с его модулем
• Значение суммы;
• Количество текущих сложений
Затем вводим с клавиатуры два числа (с команды read) и сохраняем в другую переменную абсолютное значение второго числа.
После этого запускаем цикл, в теле которого мы будем увеличивать значение переменной с количеством текущих сложений на 1, а значение сумы увеличиваем на первое число. Условием выхода из цикла будет равенство количества текущих повторений и конечного количества повторений.
После завершения цикла с условного оператора необходимо проверить знак второго числа. Если второе число отрицательное, то выводим суммы со знаком «-»
#рщыщрырыщчрщычрщычр, ыр, щрыщ, рыщ, рщыр, шыр, шыр, шыр, шыр, 8ры7,ры7,ыр7,ыпшы,пш,ыпш,ыпш,ышп,ырш,ршы,рпгкзк1спгзк1гзк1псгщк1сг931ш9рс1у79ср379чргу9в65дфу5щыкз6ык6з6н7ав2гзп3сгзпус1шрзусгизшр3срз3шзр3чзгручрзрчгзуршзчурсш93срш9у1арг931ра39ра93шра3ш9ар9ш3ср9шсрш931ср39шрмш9к1мрг1к993сп9гк1ср1кгрсг91ксрк9г1рм9гк1мп1к9гпм9г1кпм3г9пмг9упм9г3ппм79п3пм793мпгу9у92хра3маоз33зовмоз2мвомз22гвп2г8вм8гвк18гс3н81сузц6кжй3563ц63фы63х6ь4ггь462щ6юд зкплз2зоус11рчш9у1рсш01урс801ур7914рс803ос083ар8831ра91ос831оа83ра835ддывжегйыну6щ 9в58внвнд6удк6
string a;
string b;
int count = 0;
int count2 = 0;
bool g = false;
bool g2 = false;
Console.WriteLine("Введите первую строку");
a = Convert.ToString(Console.ReadLine());
Console.WriteLine("Введите первую строку");
b = Convert.ToString(Console.ReadLine());
Console.WriteLine("Введите первый символ");
Макрой avatar
char first_symbol = Convert.ToChar(Console.ReadLine());
Console.WriteLine("Введите последний символ");
char second_symbol = Convert.ToChar(Console.ReadLine());
char[] separ = { ' ' };
string[] a1 = a.Split(separ);
string[] b1 = b.Split(separ);
Макрой avatar
for (int i = 0; i < a1.Length; i++)
if (a1[i].IndexOf(first_symbol) == 0 && a1[i].IndexOf(second_symbol) == a1[i].Length - 1)
{
Console.Write(a1[i]+";"); count++; g= true;
}
if (g)
{
Console.WriteLine(" В этой строке :" + count + " слов(о)");
}
Console.WriteLine();
Макрой avatar
for (int i = 0; i < b1.Length; i++)
if (b1[i].IndexOf(first_symbol) == 0 && b1[i].IndexOf(second_symbol) == b1[i].Length - 1)
{
Console.Write(b1[i]+";"); count2++; g2 = true;
}
if (g2)
{
Console.WriteLine(" В этой строке :" + count2 + " слов(о)");
}
Console.ReadLine();
Объяснение: