Помогите пожалуйста исправить код !
Должно получиться вот так :
Вот мой код:
int k = Convert.ToInt32(Console.ReadLine());
int m = Convert.ToInt32(Console.ReadLine());
int[,] a = new int[k, m];
int c = 0;
for (int i = 0; i < k; i++)
{
for (int j = 0; j < m; j++)
{
a[i, j] = c++;
}
}
for (int i = 0; i < k; i++)
{
for (int j = 0; j < m; j++)
{
Console.Write(a[j,i] + " ");
}
Console.WriteLine();
}
Console.ReadKey();
Цикл по столбцам (слева направо), внутри него цикл по строкам, направление которого чередуется (сначала сверху вниз, затем снизу вверх). Получаем примерно такой код:
var rowsCount = Convert.ToInt32(Console.ReadLine());
var columnsCount = Convert.ToInt32(Console.ReadLine());
var a = new int[rowsCount, columnsCount];
var number = 1;
var positiveDirection = true;
for (int j = 0; j < columnsCount; j++)
{
if (positiveDirection)
{
for (int i = 0; i < rowsCount; i++)
{
a[i, j] = number++;
}
}
else
{
for (int i = rowsCount - 1; i >= 0; i--)
{
a[i, j] = number++;
}
}
positiveDirection = !positiveDirection;
}
for (int i = 0; i < rowsCount; i++)
{
for (int j = 0; j < columnsCount; j++)
{
Console.Write(a[i, j] + " ");
}
Console.WriteLine();
}
Console.ReadKey();
А давайте лучше по месту вычислять, кто там сидит. Ideone
И делайте имена переменных такие, чтобы не путаться, что в них лежит.
int hgt = 4;
int wdt = 5;
int[,] a = new int[hgt, wdt];
for (int y = 0; y < hgt; y++)
for (int x = 0; x < wdt; x++)
a[y, x] = ((x%2)==0?y:(hgt-y-1)) + 1 + x * hgt;
for (int y = 0; y < hgt; y++) {
for (int x = 0; x < wdt; x++)
Console.Write(a[y,x] + " ");
Console.WriteLine();
}
Помогите пожалуйста реализовать галерею, или подскажите готовое решение с готовым функционалом как на скриншоте: http://prntscrcom/vmn588
сделал простой калькулятор, который складывает, вычитает, умножает и делитНо как этот код уменьшить? На сколько я понимаю это делается с помощью...
Нужно написать цикл, который перебирает числа от 4 до 37 и выполняет следующие действия: