Показать полную графическую версию : [решено] Нужна помощь в написании массивов на С
vita_ivanova_95
27-11-2011, 12:56
Народ! Очень нужна помощь!Помогите написать 2 массива на языке С.
1. Дан массив различных целых чисел B(10). Найти элементы с минимальным и максимальным значением. Если эти элементы одинаковой четности, то заменить их нулями. В противном случае поменять эти элементы местами.
2. Задан двумерный массив X(3,3). Вывести на экран номера строки и столбца, на пересечении которых находится элемент с наименьшим значением.
Буду очень благодарна Спасибо!
Tonny_Bennet
27-11-2011, 13:54
Написал первую программу на C# думаю разобраться будет не сложно если что вопросы задавай.
class Program
{
static void Main(string[] args)
{
//создаём массив
int[] b = new int[10];
//заполняем его случанйыми числами
Random rand = new Random();
for (int i = 0; i < b.Length; i++)
{
b[i] = rand.Next(100);
}
Console.WriteLine("Входной массив");
for (int i = 0; i < b.Length; i++)
{
Console.Write(b[i].ToString() + " ");
}
Console.WriteLine();
//ищем минимальные и максимальные значения массива
int min = b[0];
int max = b[0];
int i_max = 0;
int i_min = 0;
for (int i = 0; i < b.Length; i++)
{
if (b[i] > max) { max = b[i]; i_max = i; };
if (b[i] < min) { min = b[i]; i_min = i; };
}
Console.WriteLine(String.Format("Максиммальный элемент = {0}, с номером {1}", max, i_max));
Console.WriteLine(String.Format("Минимальный элемент = {0}, с номером {1}", min, i_min));
//определяем чётность чисел
if ((Math.IEEERemainder(max, 2d) == 0 & Math.IEEERemainder(min, 2d) == 0) | (Math.IEEERemainder(max, 2d) != 0 & Math.IEEERemainder(min, 2d) != 0))
{
b[i_max] = b[i_min] = 0;
Console.WriteLine("Максимальный и минимальный элемент имеют одинаковую чётность");
}
else
{
b[i_max] = min;
b[i_min] = max;
Console.WriteLine("Максимальный и минимальный элемент имеют разную чётность");
}
Console.WriteLine("Выходной массив");
for (int i = 0; i < b.Length; i++)
{
Console.Write(b[i].ToString() + " ");
}
Console.ReadKey();
}
}
P.S. Сейчас вторую напишу
Tonny_Bennet
27-11-2011, 14:11
Вторая программа на C#
class Program
{
static void Main(string[] args)
{
//создаём массив
int[,] x = new int[3, 3];
Random rand = new Random();
//заполняем его случайными числами
for (int i = 0; i < 3; i++)
for (int j = 0; j < 3; j++)
{
x[i, j] = rand.Next(100);
}
//выводим массив
Console.WriteLine("Исходный массив");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
Console.Write(x[i, j].ToString() + " ");
}
Console.WriteLine();
}
//ищем минимальный элемент
int min=x[0,0];
int i_min = 0;
int j_min = 0;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (x[i, j] < min)
{
min = x[i, j];
i_min = i;
j_min = j;
};
}
}
Console.WriteLine(String.Format("Элемент с минимальным значением {0} находится на пересечении {1} столбца и {2} строки", min, j_min + 1, i_min + 1));
Console.ReadKey();
}
}
Delirium
27-11-2011, 14:56
Tonny_Bennet, я рад, что у нас есть знающие люди, решающие задачи за других, однако правил форума никто не отменял. http://forum.oszone.net/thread-69092.html - тема, обязательная для всех при написании вопроса в раздел программирования. Мы ПОМОГАЕМ, но не РЕШАЕМ за других задачи.
Если задача сложная, то да, мы можем помочь. В данном случае же это стандартные задачи для первокурсников и для их решения достаточно нескольких дней прочтения рабочего материала.
vita_ivanova_95, первое и последнее китайское предупреждение. В следующий раз тема будет перемещена в тест-форум.
Tonny_Bennet
27-11-2011, 15:37
Delirium, извините, только увидел как Вы в эту (http://forum.oszone.net/thread-69092.html) тему другого человека отправили, у которого я узнавал специальность :) Просто проснулся с бодуна небольшого решил мозги потренировать... как говорится заигрался.... постараюсь больше так не делать....
Delirium
28-11-2011, 00:50
Tonny_Bennet, если хочешь, делай, кто мешает :) Просто политика такова, что мы пытаемся не просто решить задачу, а подтолкнуть человека на самостоятельное осмысление проблемы, таким образом он и решит сам и в голове знания отложатся. :)
Tonny_Bennet
28-11-2011, 14:10
мы пытаемся не просто решить задачу, а подтолкнуть человека на самостоятельное осмысление проблемы »
Эвристика (http://ru.wikipedia.org/wiki/%DD%E2%F0%E8%F1%F2%E8%EA%E0)
В Древней Греции под эвристикой понимали способ обучения, практикуемый Сократом, когда учитель приводит ученика к самостоятельному решению какой-либо задачи, задавая ему наводящие вопросы. В настоящее время эвристическими способами решения задач называют способы, позволяющие минимизировать перебор возможных решений, зачастую основанные на интуиции. Значительный интерес к исследованию эвристических методов возник в связи с возможностью решения ряда задач (распознавание объектов, доказательство теорем и т. д.), в которых человек не может дать точный алгоритм решения, с помощью технических устройств.
Согласен на все 100%.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.