Предмет: Информатика, автор: vadikpronoob

Нужно написать программу в с# либо исправить мой код, который работает некорректно, Все как в условии
using System;
namespace ConsoleApp3
{
class Program
{
public static void Main(string[] args)
{
const int n = 3, m=2;
int[] a = new int[n] { 1, 2, 3 };
double[] b = new double[m];
Console.WriteLine("Исходный массив");
for (int i = 0; i < n; i++)
{
Console.Write("{0} ", a[i]);
}
Console.WriteLine();
for (int i = 0; i < m; i++)
{
for (int j = 1; j <= n; j++)
{
b[i] += Math.Pow(a[j - 1], i + 1);
}
}
Console.WriteLine("Результат");
for (int i = 0; i < m; i++)
{
Console.Write("{0} ", b[i]);
Console.ReadKey();
}
}
}
}

Приложения:

Ответы

Автор ответа: ЯковПервый
1

// Массив из "a" заполнил псевдорандомными числами от 0 до 3 для наглядности

using System;

namespace ConsoleApp1

{

   internal class Program

   {

       private static void Main()

       {

           const int numsCount = 24;

           const int resCount = 10;

           double[] nums = new double[numsCount];

           double[] res = new double[resCount];

           var rand = new Random();

           for (int i = 0; i < numsCount; i++)

           {

               nums[i] = rand.Next(0, 4);

               Console.WriteLine($"a[{i}] = {nums[i]}");

           }

           Console.WriteLine();

           for (int i = 1; i <= resCount; i++)

           {

               double sum = 0;

               for (int j = 0; j < numsCount; j++)

                   sum += Math.Pow(nums[j], i);

               res[i - 1] = sum;

               Console.WriteLine($"b[{i - 1}] = {sum}");

           }

           Console.ReadLine();

       }

   }

}

Приложения:

vadikpronoob: Буду очень признателен
ЯковПервый: У Вас в цикле Console.ReadKey(); блокирует вывод, пока не будет считан key
vadikpronoob: изменил Key на Line, теперь для следующего ответа нужно нажать Enter, а можно как то сделать что он сразу все ответы вывел? const int n = 3, m=3;
int[] a = new int[n] { 1, 2, 3 };
double[] b = new double[m];
Console.WriteLine("Исходный массив");
for (int i = 0; i < n; i++)
{
Console.Write("{0} ", a[i]);
}
Console.WriteLine();
vadikpronoob: for (int i = 0; i < m; i++)
{
for (int j = 1; j <= n; j++)
{
b[i] += Math.Pow(a[j - 1], i + 1);
}
}
Console.WriteLine("Результат");
for (int i = 0; i < m; i++)
{
Console.Write("{0} ", b[i]);
Console.ReadLine();
}
ЯковПервый: Так разницы условно нет. У Вас по-прежнему блокировка в цикле. Уберите Console.ReadLine() вообще из цикла. И напишите это после него
vadikpronoob: а если я создам новое задание, вы сможете сделать? я убрал Console.ReadLine(), дальше не понимаю что делать, когда запустил программу то вроде все работает, но правда все числа в строчку идут а не вниз столбцом
ЯковПервый: Если нужно, чтобы числа выводились столбцом, нужно Console.Write("{0} ", b[i]); заменить на Console.WriteLine("{0} ", b[i]);
ЯковПервый: Новое задание могу сделать
vadikpronoob: Спасибо вам ОГРОМНОЕ!
ЯковПервый: Пожалуйста)
Похожие вопросы
Предмет: Окружающий мир, автор: Samira1802