Динамическая память - C#
Формулировка задачи:
Добрый день! Помогите разобраться в решении задания.
Написать программу, позволяющую из массива записей данной структуры: наименование товара, количество на складе, цена единицы продукции, дата поступления, составить массив записей следующей структуры: наименование товара, количество на складе;разместить его в динамической области памяти.
вот код, мне кажется, что неправильно воспринял задание.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication36
{
class Program
{
static void Main(string[] args)
{
string[] stringArray = { "Наименование товара", "Количество товара на складе", "Цена единицы продукции", "Дата поступления" };
string[] stringArray1 = new string[2];
stringArray1[0] = "Наименование товара";
stringArray1[1] = "Кол-во товара на складе";
Console.WriteLine("Исходный массив");
for (int i = 0; i<4; i++)
Console.Write(stringArray[i]+" ");
Console.WriteLine();
Console.WriteLine("Полученный массив");
for (int i = 0; i < 2; i++)
Console.Write(stringArray1[i] + " ");
Console.ReadKey();
}
}
}Решение задачи: «Динамическая память»
textual
Листинг программы
public class tovar // Класс записей о товаре
{
public string name; // Наименование
public int amount; // Количество на складе
public int cost; // Цена за ед. товара
public string data; // Дата поступленя
}
public class tovar_short // Класс кратких записей о товаре
{
public string name; // Наименование
public int amount; // Количество на складе
}
class Program
{
static void Main(string args[])
{
tovar[] Array = new tovar[100];
tovar_short[] Array1 = new tovar_short[100];
/*
* Дальше можно заполнить массив
* Array[0].name = "НазваниеТовара";
* Array[0].amount = ....... и т. д.
*/
Console.WriteLine("Первый массив:");
for (var i = 0; i <= Array.Length; i++) // В этом цикле одновременно выводится первый массив и заполняется второй
{
ConsoleWrite(Array[i].name + " ");
ConsoleWrite(Array[i].amount + " ");
ConsoleWrite(Array[i].cost + " ");
ConsoleWriteLine(Array[i].data);
Array1[i].name = Array[i].name;
Array1[i].amount = Array[i].amount;
}
Console.WriteLine("Второй массив");
for (var i = 0; i <= Array.Length; i++)
{
ConsoleWrite(Array[i].name + " ");
ConsoleWriteLine(Array[i].amount);
}
}
}