Программирование на языке С#: разработка консольных приложений - C#

Узнай цену своей работы

Формулировка задачи:

Пример.
using System;
namespace ConsoleApplication
{
  class Class
  {
    static int [] Input ()
    {
      Console.WriteLine("введите размерность массива");
      int n=int.Parse(Console.ReadLine());
      int []a=new int[n];
      for (int i = 0; i < n; ++i) 
      {
        Console.Write("a[{0}]= ", i);
        a[i]=int.Parse(Console.ReadLine());
      }
      return a;
    }
 
    static int Max(int[] a)
    {
      int max=a[0];
      for (int i = 1; i < a.Length; ++i)
        if (a[i] > max) max=a[i];
      return max;
    }
 
    static void Main()
    {
      int[] myArray=Input();
      int max=Max(myArray);
      int kol=0;
      for (int i=0; i<myArray.Length;++i)
        if (myArray[i]==max)++kol;
      Console.WriteLine("Количество максимальных элементов = "+kol);
    }
  }
}
Помогите(( как этот пример переделать так чтобы: Заменить все максимальные элементы нулями.
Дан массив размером n×n, элементы которого целые числа. Пример.
using System;
namespace ConsoleApplication
{
  class Class
  {
    static int [,] Input (out int n)
    {
      Console.WriteLine("введите размерность массива");
      Console.Write("n = ");
      n=int.Parse(Console.ReadLine());
      int [,]a=new int[n, n];
      for (int i = 0; i < n; ++i) 
        for (int j = 0; j < n; ++j)
        {
          Console.Write("a[{0},{1}]= ", i, j);
          a[i, j]=int.Parse(Console.ReadLine());
        }
      return a;
    }
 
    static void Print(int[,] a) 
    {
      for (int i = 0; i < a.GetLength(0); ++i,Console.WriteLine() )
        for (int j = 0; j < a.GetLength(1); ++j)
          Console.Write("{0,5} ", a[i, j]);
    }
 
    static double Rezalt(int[,] a)
    {
      int k=0;
      double s=0;
      for (int i = 0; i < a.GetLength(0); ++i)
        for (int j = i+1; j < a.GetLength(1); ++j)
          if (a[i, j] %2!= 0) {++k; s+=a[i, j];}
      if (k!=0) return s/k;
      else return 0;
    }
 
    static void Main()
    {
      int n;
      int[,] myArray=Input(out n);
      Console.WriteLine("Исходный массив:");
      Print(myArray);
      double rez=Rezalt(myArray);
      Console.WriteLine("Среднее арифметическое ={0:f2}", rez);
    }
  }
}

Задание Практической работы. Подсчитать сумму элементов, расположенных на побочной диагонали.

Дан массив размером n×n, элементы которого целые числа. Найти максимальный элемент в каждой строке и записать данные в новый массив. Пример
using System;
namespace ConsoleApplication
{
  class Class
  {
    static int [][] Input ()
    {
      Console.WriteLine("введите размерность массива");
      Console.Write("n = ");
      int n=int.Parse(Console.ReadLine());
      int [][]a=new int[n][];
      for (int i = 0; i < n; ++i)
      {
        a[i]=new int [n];
        for (int j = 0; j < n; ++j)
        {
          Console.Write("a[{0},{1}]= ", i, j);
          a[i][j]=int.Parse(Console.ReadLine());
        }
      }
      return a;
    }
 
    static void Print1(int[] a) 
    {
      for (int i = 0; i < a.Length; ++i)
        Console.Write("{0,5} ", a[i]);
    }
 
    static void Print2(int[][] a) 
    {
      for (int i = 0; i < a.Length; ++i,Console.WriteLine() )
        for (int j = 0; j < a[i].Length; ++j)
          Console.Write("{0,5} ", a[i][j]);
    }
 
    static int Max(int[] a)
    {
      int max=a[0];
      for (int i = 1; i < a.Length; ++i)
        
        if (a[i] >max) {max=a[i];}
      return max;
    }
 
    static void Main()
    {
      int[][] myArray=Input();
      Console.WriteLine("Исходный массив:");
      Print2(myArray);
      int[]rez=new int [myArray.Length];
      for (int i=0;i<myArray.Length; ++i)
        rez[i]=Max(myArray[i]);
      Console.WriteLine("Новый массив:");
      Print1(rez);
    }
  }
}

Задание. Четные столбцы таблицы заменить на вектор X.

Решение задачи: «Программирование на языке С#: разработка консольных приложений»

textual
Листинг программы
using System;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int N;
            Console.WriteLine("N=");
            N = int.Parse(Console.ReadLine());
            int[,] massiv = new int[N, N];
            int[] vektor = new int[N];
            Random rand = new Random((int)DateTime.Now.Ticks);
            //заполнение матрицы рандомно
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    massiv[i, j] = rand.Next(0, 100);
                }
            }
            //заполнение вектора рандомно
            for (int i = 0; i < N; i++)
            {
                vektor[i] = rand.Next(0, 100);
            }
            //выводим массив
            Console.WriteLine("Массив:");
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    Console.Write(massiv[i, j] + " ");
                }
                Console.WriteLine();
            }
            //выводим вектор
            Console.WriteLine("\nВектор");
            for (int i = 0; i < N; i++)
            {
                Console.Write(vektor[i] + " ");
            }
            //собственно замена
            for (int j = 2; j < N; j += 2)
            {
                for (int i = 0; i < N; i++)
                {
                    massiv[i, j] = vektor[i];
                }
            }
            //выводим результат
            Console.WriteLine("\nЗамененный массив:");
            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N; j++)
                {
                    Console.Write(massiv[i, j] + " ");
                }
                Console.WriteLine();
            }
                Console.ReadKey();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы