C#   Уроки программирования с нуля. Си-шарп для чайников   C#

Здравствуйте, гость!
Вход
Регистрация


Функции в Си-шарп. Оператор return
Функция являет собой небольшую подпрограмму. Если просто программа - это решение какой-то прикладной задачи, то функция – это тоже решение, только уже в рамках программы и, соответственно, она выполняет задачу «попроще». Функции позволяют уменьшить размер программы за счет того, что не нужно повторно писать какой-то фрагмент кода - мы просто вызываем сколько угодно и где нужно объявленную функцию.

Функции в Си-шарп также называют методами. Между этими двумя понятиями разница небольшая, и тут мы будем использовать термин функция.

До этого, мы весь код писали в функции main. Функция main является главной функцией приложения и точкой входа программы. Любая функция в Си-шарп может быть объявлена только в рамках класса, так как C# - полностью объектно-ориентированный язык программирования (ООП). Объявление пользовательской функции внутри другой функции (например main) недопустимо. Объявление функции имеет следующую структуру:

[модификатор доступа] [тип возвращаемого значения] [имя функции] ([аргументы])
{
// тело функции
}

Модификатор доступа (области видимости) может быть public, private, protected, internal. Для чего это нужно будем говорить в отдельном уроке, а пока будем везде использовать public.

Между модификатором и типом может стоять ключевое слово static, что означает, что функция будет статичной. Подробно говорить о статичных функциях и переменных мы будем в отдельном уроке. Скажу только, что из статичной функции можно вызывать другие функции, если они тоже статичные. Главная функция main – всегда static, поэтому все функции в этом уроке мы будем объявлять также статичными.

Функция может возвращать значение или не возвращать. Если функция, например, возвращает целое число, то нужно указать тип int. Если функция не возвращает никакого значения, то для этого используется ключевое слово void. Функции, которые не возвращают значение, еще называют процедурами.

Называть функции стоит так, чтобы имя отображало суть функции. Используйте глаголы или словосочетания с глаголами. Примеры: GetAge(), Sort(), SetVisibility().

Аргументы – это те данные, которые необходимы для выполнения функции. Аргументы записываются в формате [тип] [идентификатор]. Если аргументов несколько, они отделяются запятой. Аргументы могут отсутствовать.

Первая строка функции, где указываются тип, имя, аргументы и т.д. называется заголовком функции.

Итак, хватит теории, переходим к практике.

Пример функции, которая не возвращает значение

Напишем простую функцию, которая будет заменять в массиве строк указанное имя на другое. Данная функция будет принимать три аргумента: массив строк, имя, которое необходимо заменить и новое имя. Так как функция не будет возвращать значение, указываем тип void перед именем функции.

public static void ReplaceName(string[] names, string name, string newName)
{
   for (int i=0; i < names.Length; i++)
   {
     if (names[i] == name)
     names[i] = newName;
   }
}

Сама функция очень простая. Проходим в цикле по элементам и смотрим, равен ли элемент указанному имени. Если да, то заменяем его на новое имя.

Функция написана, и теперь используем ее:

class Program
{
   public static void ReplaceName(string[] names, string name, string newName)
   {
     for (int i=0; i < names.Length; i++)
     {
       if (names[i] == name)
         names[i] = newName;
       }
     }
   static void Main(string[] args)
   {
     string[] names = { "Sergey", "Maxim", "Andrey", "Oleg", "Andrey", "Ivan", "Sergey" };
     ReplaceName(names, "Andrey", "Nikolay"); // вызов функции. Все строки "Andrey" в массиве будут заменены на "Nikolay"
     ReplaceName(names, "Ivan", "Vladimir");
   }
}

После вызова функции два раза в этой программе, массив будет выглядеть так: "Sergey", "Maxim", " Nikolay ", "Oleg", " Nikolay ", " Vladimir ", "Sergey".


Пример функции, которая возвращает значения

Напишем функцию, которая будет находить максимальное число в массиве. Аргумент у этой функции будет один – массив целых чисел. Тип возвращаемого значения – целое число int.

public static int GetMax(int[] array)
{
   int max = array[0];
   for (int i = 1; i < array.Length; i++)
   {
     if (array[i] > max)
       max = array[i];
   }
   return max;
}

Логика функции проста. Создаем переменную max, в которую записываем первый элемент массива. Дальше в цикле сравниваем каждый элемент со значением в max, если элемент больше, чем max, то записываем в max этот элемент. В конце функции используем оператор return, чтобы вернуть наш результат.

Оператор return должен быть обязательно в функции, которая возвращает значение.

Используем нашу функцию:

class Program
{
   public static int GetMax(int[] array)
   {
     int max = array[0];
     for (int i = 1; i < array.Length; i++)
     {
       if (array[i] > max)
         max = array[i];
     }
     return max;
   }
   static void Main(string[] args)
   {
     int[] numbers = { 3, 32, 16, 27, 55, 43, 2, 34 };
     int max;
     max = GetMax(numbers); //вызов такой функции можно использовать при присваивании значения
     Console.WriteLine(GetMax(numbers)); // вызов функции также можно использовать как аргумент при вызове другой функции. WriteLine() – тоже функция.
     Console.ReadKey();
   }
}

Оператор return

Когда встречается этот оператор, происходит выход из функции и код ниже (если он есть) выполняться не будет (например, в функцию передан такой аргумент, при котором нет смысла выполнять функцию). Он похож на оператор break, который используется для выхода из циклов. Этот оператор также можно использовать и в функциях, которые не возвращают значение. Оператор return допустимо использовать несколько раз в функции, но этого делать не рекомендуется.

Домашнее задание

Задача 1. Напишите функцию, которая будет менять в массиве целых чисел все элементы, которые равны указанному значению (аргумент) на противоположное значение по знаку. Например, все элементы массива которые равны 5, будут меняться на -5.

Задача 2. Напишите функцию, которая будет находить минимальное число из трех.

Задача 3. Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи. Ряд Фибоначчи – это ряд, в котором каждый следующий элемент равен сумме двух предыдущих. 1 1 2 3 5 8 13 21… Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.

PS. Не забудьте поделиться с друзьями этой статьей с помощью кнопок социальных сетей.
Понравилась статья? Подпишись на рассылку и узнавай первым о новых уроках по почте!


Поделиться с друзьями:
21 май 2013 01:53
igorue190 16 мар 2017 17:06
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Enter number: ");
int a = Convert.ToInt32(Console.ReadLine());

Console.WriteLine(Fibo(a));

Console.ReadKey();
}
public static int Fibo( int a)
{
int[] mas = new int[40];
mas[0] = 1;
mas[1] = 1;
for (int i = 2; i < mas.Length; i++)
{
mas[i] = mas[i - 2] + mas[i - 1];
}
a = mas[a];
return a;
}
}

igorue190 16 мар 2017 16:39
class Program
{
static void Main(string[] args)
{
Console.Write("Enter first number: ");
int a = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter second number: ");
int b = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter third number: ");
int c = Convert.ToInt32(Console.ReadLine());
int min = GetMin(a, b, c);
Console.WriteLine("Minimal numbers {0}.",min);
Console.ReadKey();
}
public static int GetMin(int _a, int _b, int _c)
{
if ((_a < _b) && (_a < _c))
return _a;
else if ((_b < _a) && (_b < _c))
return _b;
else
return _c;
}
}

igorue190 16 мар 2017 16:23
class Program
{
static void Main(string[] args)
{
int[] numbers = { 3, 5, 7, 9, 1, 2, 4, 6, 8 };
GetNum(numbers, 5, -5);
for (int j = 0; j < numbers.Length; j++)
{

Console.WriteLine(numbers[j]);
}
Console.ReadKey();

}
public static void GetNum(int[] _numbers, int _num, int _newnum)
{

for (int i = 0; i < _numbers.Length; i++)
{
if (_numbers[i] == _num)
_numbers[i] = _newnum;
}
}


}

xpishka 10 мар 2017 16:39

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication2
{
class Program
{
public static double perevod(double num)
{
double num1 = 1, num2 = 1, num3 = 0;
if (num > 2)
{
for (double i = 2; i < num; i++)
{
num3 = num1 + num2;
num1 = num2;
num2 = num3;
}
}
else
{
num3 = 1;
}
return num3;
}
static void Main(string[] args)
{
double number, number2;
do
{
Console.WriteLine("Введите число");
number = Convert.ToDouble(Console.ReadLine());
if (number == 0)
{
Console.WriteLine("Порядковому номеру ряда {0} - cоответствует число Фибоначчи {1}", number, number);
}
else if (number > 0)
{
Console.WriteLine("Порядковому номеру ряда {0} - cоответствует число Фибоначчи {1}", number, perevod(number));
}
else
{
number = number * -1;
number2 = perevod(number);
number2 = (Math.Pow(-1, (number + 1)) * number2);
Console.WriteLine("Порядковому номеру {0} - cоответствует число Фибоначчи {1}", -number, number2);
}
} while (true);
}
}
}

lax33 04 мар 2017 18:16
1.

class Program
{
public static void invertor(int[] massiv)
{
for (int i = 0; i < massiv.Length; i++)
{
if (massiv[i] == 5)
{
massiv[i] = -5;
}
}
}


static void Main(string[] args)
{
int[] array = { 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 };
invertor(array);
for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}

Console.ReadKey();
}
}


2.

class Program
{
public static int minm(int[] massiv1)
{
int min = massiv1[0];
for (int i = 1; i < 3; i++)
{

if (min > massiv1[i ])
{
min = massiv1[i];

}

}
return min;
}
static void Main(string[] args)
{
int[] array = { 3, -6, -4 };

Console.WriteLine(minm(array));

Console.ReadKey();

}


3.

class Program
{
public static int masin(int nomElem)
{

int[] mas = new int[nomElem + 1];
mas[1] = 1;
mas[2] = 2;
for (int i = 3; i <= nomElem; i++)
{

mas[i] = mas[i - 1] + mas[i - 2];

}
return mas[nomElem];
}
static void Main(string[] args)
{
int nom = Convert.ToInt32( Console.ReadLine());

Console.WriteLine(masin(nom));
Console.ReadKey();
}

qegorcag 07 фев 2017 21:18
Ведущая компания в России и странах СНГ по продаже авиабилетов «Airline-online»

Крупнейшая международная компания по продаже А/В билетов
срочно набирает сотрудников на постоянную основу для несложной
работы через интернет, с ежедневными выплатами от 11 000 руб.

Работая в нашей компании Вы получаете:

- Соблюдение трудового кодекса
- Полный соцпакет, оплачиваемый отпуск, больничный, санаторий.
- Высокий доход
- Каждый наш сотрудник на дому гарантированно получает от 11 000 руб. в день.
- Гарантированные стабильные выплаты заработанных денег.
- Выплаты происходят ежедневно на банковские карты или электронные кошельки.

Пройдите регистрацию у нас на сайте. ( www.poisk-rabota.tk )

Без вложений, опыт и профессиональные навыки не требуются!

megorcag 31 янв 2017 19:46
Ведущая компания в России и странах СНГ по продаже авиабилетов «Airline-online»

Крупнейшая международная компания по продаже А/В билетов
срочно набирает сотрудников на постоянную основу для несложной
работы через интернет, с ежедневными выплатами от 11 000 руб.

Работая в нашей компании Вы получаете:

- Соблюдение трудового кодекса
- Полный соцпакет, оплачиваемый отпуск, больничный, санаторий.
- Высокий доход
- Каждый наш сотрудник на дому гарантированно получает от 11 000 руб. в день.
- Гарантированные стабильные выплаты заработанных денег.
- Выплаты происходят ежедневно на банковские карты или электронные кошельки.

Пройдите регистрацию на нашем сайте. ( www.poisk-rabota.tk )

Без вложений, опыт и профессиональные навыки не требуются!

mihpir889 06 янв 2017 22:23

задача 1
public static void smena(int[] z, int num, int newnum)
{
for (int i = 0; i < z.Length; i++)
{
if (z[i] == num)
z[i] = newnum;
}

}
public static void Main(string[] args)
{
int[] m = {5, 4, 1, 4, 5, 5, 2, 2, 6, 7, 7, 5, 8, 2, 43, 56};
smena(m,5,-5);
for (int i = 0; i < m.Length; i++)
{
Console.WriteLine(m[i]);
}
Console.ReadKey();
Задача 2

public static void Main(string[] args)
{
int[] nu = new int[3];
Console.WriteLine("Введите первое число");
nu[0] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второе число");
nu[1] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите третье число");
nu[2] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Наибольшее число "+ MaxN(nu));
Console.ReadKey();
}

public static int MaxN(int[] ma)
{
int max;
max = ma[0];
for (int i = 0; i < ma.Length; i++)
{
if (ma[i] > max)
max = ma[i];
}
return max;
}


Задача 3
public static void Main(string[] args)
{
int a;
Console.WriteLine("Введите порядковый номер элемента ряда фибоначи (до 40)");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(Fb(a));
Console.ReadKey();
}
public static int Fb(int k)
{
int[] fi = new int[40];
fi[0] = 1;
fi[1] = 1;
for (int i = 2; i < fi.Length; i++)
{
fi[i] = fi[i - 2] + fi[i - 1];
}

k = fi[k];
return k;
}




Илья 27 ноя 2016 17:43
{
class Program
{
public static void ReplaceNumber(int[]numbers, int number, int newNumber)
{
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == number)
numbers[i] = newNumber;
}
}
static void Main(string[] args)
{
Console.WriteLine("Enter the number:");
int a = Convert.ToInt32(Console.ReadLine());
Random r = new Random ();
int[] numbers = new int[30];
Console.WriteLine("First Array:");
for (int i = 0; i < numbers.Length; i++)
{
numbers[i] = r.Next(-10, 10);
Console.Write(numbers[i] + " " );
}
ReplaceNumber(numbers, a, -a);
Console.WriteLine("Second Array:");
for (int i = 0; i < numbers.Length; i++)
{
Console.Write(numbers[i] + " ");
}
Console.ReadKey();
}
}
}

Yara 20 ноя 2016 23:08
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
public static int fibo(int number)
{
int[] number1 = new int[number+1];
number1[0] = 1;
number1[1] = 1;
for (int i = 2; i < number; i++)
{
number1[i] = number1[i - 1] + number1[i - 2];
}

return number1[number-1];
}
public static int min(int a, int b, int c)
{
int m=0;
if (a < b && a < c) m = a;
if (b < a && b < c) m = b;
if (c < b && c < a) m = c;
return m;
}
public static void Zam(int[] numc)
{int[] numc2=new int[numc.Length];
for (int i=0; i < numc.Length; i++)
{
if (numc[i]!=0) { numc2[i] = numc[i] - numc[i] - numc[i]; }

Console.WriteLine(numc2[i]);
}
}
static void Main(string[] args)
{
int[] num = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int[] num2 = new int[] { 11,-45,17,2,-47,-1,0,57,2,4};
int[] sum = new int[10];

Console.WriteLine("Good");

Console.WriteLine(fibo(8));

Console.ReadKey();
}
}
}

Olga 15 ноя 2016 21:32

/*Задача 1. Напишите функцию, которая будет менять в массиве целых чисел все элементы, которые равны указанному значению (аргумент)
* на противоположное значение по знаку. Например, все элементы массива которые равны 5, будут меняться на -5.*/
public static void ChangeArrayElements(int[] iNums, int iVal)
{
for (int i=0; i<iNums.Length; i++)
{
if (iNums[i] == iVal)
{
iNums[i] = (iNums[i] - iNums[i]) - iNums[i];
}
}
}

/*Задача 2. Напишите функцию, которая будет находить минимальное число из трех.*/
public static int GetMinNumb(int iNum1, int iNum2, int iNum3)
{
int iMin = iNum1;

if ((iNum1 > iNum2) || (iNum1 > iNum3))
{
// (iNum2 < iNum3) ? iMin = iNum2 : iMin = iNum3;
if (iNum2 < iNum3) iMin = iNum2;
else iMin = iNum3;
}
else iMin = iNum1;
return iMin;
}
/*Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.*/
public static int GetFibonachchiElement(int iNum)
{
int iEl;
int iPrevEl = 1;
int iNextEl2 = 1;
if ((iNum == 1) || (iNum == 2))
{
return 1;
}
for (int i = 3; i <= iNum; i++)
{
iEl = iNextEl2;
iNextEl2 = iPrevEl + iNextEl2;
iPrevEl = iEl;
}
return iNextEl2;
}


static void Main(string[] args)
{
int[] iArray = {2,3,5,78,2,4,54,32,2,8,22,1,2,35};

ChangeArrayElements(iArray, 2);
foreach (int el in iArray)
{
Console.Write(el+" ");
}
Console.ReadLine();

Console.WriteLine("Task 2");
Console.WriteLine("Enter first number:");
int iFirst = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter second number:");
int iSecond = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter third number:");
int iThird = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("Minimum is: "+GetMinNumb(iFirst, iSecond, iThird));
Console.ReadLine();

Console.WriteLine("Task 3");
Console.WriteLine("Enter index of Fibonachi:");
iFirst = Convert.ToInt32(Console.ReadLine());
iSecond = GetFibonachchiElement(iFirst);
Console.WriteLine(iSecond);
Console.ReadLine();
}

pirs 15 ноя 2016 20:27
1.
public static void ReplaceNumber(int[] Numbers, int Number, int newNumber);
{
for (int i = 0; i < Numbers.Length; i++)
{ if (Numbers[i] == Number) Numbers[i] = newNumber;}
}
static void Main(string[] args)
{
int[] Numbers = {0,5,2,5,4,5};
ReplaceNumber(Numbers, 5, -5);

Проверка работы функции:
int s = 0;
for (int a = 0; a <=5; a++)
{ s += Numbers[a]; }
Console.WriteLine(s);
Console.ReadKey();

2.
public static int GetMin(int[] array)
{
int min = array[0];
for (int = 3; i < array.Length; i++)
{ if (array[i] < min) min = array[i];}
return min;
}
static void Main(string[] args)
{
int[] numbers = (15,25,30};
int min;
min = GetMin(numbers);
Console.WriteLine(GetMin(numbers));
Console.ReadKey();
}

3.
public static int Fibonach(int[] array)
{
int nach = 8;
for (int i = 1; i <= nach; i++)
{ if (array[i] == nach) nach = array[i]; }
return array[nach];
}
static void Main(string[] args)
{
int [] numbers = {1,1,2,3,5,8,13,21,34,55,89};
int a;
a = Fibonach(numbers);
Console.WriteLine(a);
Console.ReadKey();


Перец 31 окт 2016 20:46
/// <summary>
/// Смена знака заданного числа
/// </summary>
/// <param name="args"></param>
static void Main(string[] args)
{
int[] nums = { 0, 4, 5, 1, -5, -1, 9, 5, 5 };
int num = 5;
ChngArg(nums, num);
for (int i = 0; i < nums.Length; i++)
Console.Write(" " + nums[i]);
Console.ReadKey();
}

static int ChngArg(int [] nums, int num)
{
for (int i = 0; i < nums.Length; i++)
{
if (nums[i] == num)
nums[i] = -nums[i];
}
return 0;
}

/// <summary>
/// Find minimal number
/// </summary>
static void Main()
{
Insert();
Console.ReadKey();
}
static int FindMin(int [] nums)
{
int min = nums[0];
for (int i = 0; i < nums.Length; i++)
if (nums[i] > min)
min = nums[i];
Console.WriteLine("Minimal number is - " + min);
return min;
}

static void Insert()
{
Console.WriteLine("Please, enter three nums");
Console.Write("First: ");
int[] nums = new int[3];
nums[0] = Convert.ToInt32(Console.ReadLine());
Console.Write("Second: ");
nums[1] = Convert.ToInt32(Console.ReadLine());
Console.Write("Third: ");
nums[2] = Convert.ToInt32(Console.ReadLine());
FindMin(nums);
}

static void Main(string[] args)
{
Insert();
Console.ReadKey();
}

static int FindEl(int num)
{

int[] nums = new int[20];
int a = 1, b = 1, c = 0;
for (int i = 0; i < nums.Length - 3; i++)
{
if (i == 0)
Console.Write("1 1");
c = a + b;
nums[i] = c;
a = b;
b = c;
Console.Write(" " + c);
}
return nums[num];
}

static void Insert()
{
Console.Write("What element you want to see from Fibonacci nums: ");
int el = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("\n" + FindEl(el - 3));
}

Elena 26 окт 2016 16:17

//fibonachi
public static int Fib(int num)
{
int a = 1;
int b = 1;
int c = 0;
if(num == 1 || num == 2)
{
return 1;
}
for(int i = 1; i < num-1; i++)
{
c = a + b;
a = b;
b = c;
}
return c;
}

r033 25 окт 2016 11:35
Вариант с аргументом

static void Invert(int[] numbers, int arg) // смена знака всех элементов, равных arg или -arg
{
for (int i = 0; i < numbers.Length; i++) { if (numbers[i] == arg) { numbers[i] = -numbers[i]; } }
}


Вариант с аргументом (по модулю)

static void Invert(int[] numbers, int arg) // смена знака всех элементов, равных arg или -arg
{
for (int i = 0; i < numbers.Length; i++) { if (Math.Abs(numbers[i]) == Math.Abs(arg)) { numbers[i] = -numbers[i]; } }
}

r033 25 окт 2016 11:29
Точнее первое, но не важно
Все пытаются изобрести велосипед, когда можно просто написать numbers[i] = -numbers[i];

r033 25 окт 2016 11:28
Второе задание

{
static void Invert(int[] numbers) // смена знака всех элементов массива на противоположный
{
for (int i = 0; i < numbers.Length; i++) { numbers[i] = -numbers[i]; }
}
static void Main(string[] args)
{
int[] numbers = { -2, -4, -10, 56, 89, 90 };
Invert(numbers);
foreach (int number in numbers) { Console.WriteLine(number); } // будет выведено 2, 4, 10, -56, -89 и -90
Console.ReadKey();
}
}

Паша 10 окт 2016 01:23

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyFirstApp
{
class Program
{
public static void ReplaceNam(int[] nam, int n)
{
for (int i = 0; i < nam.Length; i++)
{
if (String.Equals(nam[i], n))
{
nam[i] = Convert.ToInt32("-"+nam[i]);
}
}
}

static void Main(string[] args)
{
int[] names = { 23,235,45,457,5,34,25,4564,456 };
ReplaceNam(names, 456);
foreach (int s in names)
{
Console.WriteLine(s);
}
Console.ReadKey();
}
}
}


Юрец 27 сен 2016 02:02

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace FirstFunc
{
class Program
{
//инверсия числа
public static void InversNum(int [] mass, int number)
{
for(int i=0; i<mass.Length; i++)
{
if (mass[i] == number)
mass[i] = (number - number) - number;
}
}
//нахождение наименьшего
public static int MinNum(int a, int b, int c)
{
if (a < b && a < c)
return a;
else if (b < a && b < c)
return b;
else// if (c < a && c < b)
return c;
}
//возврат указанно элемента ряда Фибоначчи
public static int FiboReturn(int[] massFibo, int fiboNum)
{
return massFibo[fiboNum-1];
}


static void Main(string[] args)
{
int razmer, razmerFibo, retFib;
//указываем размерность массива
Console.WriteLine("Введите размерность массива");
razmer = Int32.Parse(Console.ReadLine());
int[] mas = new int[razmer];

//заполняем массив вводя данные с клавиатуры
for (int t = 0; t<mas.Length; t++)
{
Console.WriteLine("Введите {0} - й элемент массива", t+1);
mas[t] = Int32.Parse(Console.ReadLine());

}

//выбираем число которое будем менять
Console.WriteLine("Какое число поменять на противоположное ?");
int repl = Int32.Parse(Console.ReadLine());
InversNum(mas, repl);// вызываем функцию замены

//выводим новые массив
foreach(int NewMass in mas)
{
Console.WriteLine(NewMass);
}

Console.ReadKey();

//создаем массив в который будем записывать числа для сравнения
int[] chisla = new int[3];

// заполняем массив
Console.WriteLine("Введите 3 числа");
for (int ch = 0; ch < chisla.Length; ch++)
{
chisla[ch] = Int32.Parse(Console.ReadLine());
}

Console.WriteLine("Наименьшее из трех чисел это {0}", MinNum(chisla[0], chisla[1], chisla[2]));
Console.ReadKey();


//ряд Фибоначчи
Console.WriteLine("Введите размерность ряда Фибоначчи");
razmerFibo = Int32.Parse(Console.ReadLine());
int[] fibo = new int[razmerFibo];
fibo[0] = 1;
fibo[1] = 1;

//заполняем массив числами Фибоначчи
for (int f = 2; f<fibo.Length; f++)
{
fibo[f] = fibo[f-2] + fibo[f-1];
}

//выводим что получилось
foreach (int fibV in fibo)
{
Console.WriteLine(fibV);
}

Console.ReadKey();
Console.WriteLine();

//указываем какой номер элемента хотим вывести
Console.WriteLine("Какой элемент ряда Фибоначчи вам показать");
retFib = Int32.Parse(Console.ReadLine());

int finalFib = FiboReturn(fibo, retFib);// передаем порядковый номер элемента

Console.WriteLine(finalFib);

Console.ReadKey();



}
}
}

sv_klim_1 13 сен 2016 01:16
//////////////////// func


//1
public static void changeIntValueSign(int[] arr, int value, int size)
{
for (int i = 0; i < size; i++) if (arr[i] == value || arr[i] == -value) arr[i] = arr[i] * -1;
}
//2
public static double minOf3Value(double a, double b, double c)
{
if (a > b && c > b) return b;
if (a > c && b > c) return c;
return a;
}
//3
public static int seqFibonacciIndex(int index)
{
for(int i = 1, a = 1, b = 1; ; i++)
{
if (index == i)
{
if (a > b) return a;
else return b;
}
if (i % 2 == 0)
{
a += b;
}
else b += a;
}
}

//////////////////// main


Random rand = new Random();
short size = 10;
int[] arr1 = new int[size];

for (int i = 0; i < size; i++)
{
Console.Write((arr1[i] = rand.Next(-10, 10)) + " ");
}
Console.WriteLine("Input a digit: ");

changeIntValueSign(arr1, Convert.ToInt32(Console.ReadLine()), size);

for (int i = 0; i < size; i++)
{
Console.Write(arr1[i] + " ");
}

// 2
Console.WriteLine(minOf3Value(3, 4, 5));

// 3
Console.WriteLine(seqFibonacciIndex(1));
Console.WriteLine(seqFibonacciIndex(2));
Console.WriteLine(seqFibonacciIndex(3));
Console.WriteLine(seqFibonacciIndex(4));

Flamingo 10 сен 2016 01:28

class Program
{
static void GetMin(int a, int b, int c)
{
if (a < b)
Console.WriteLine(a < c ? a : c);
else
Console.WriteLine(b < c ? b : c);
}
static void Main(string[] args)
{
int a = 11200, b = 11231231, c = 1000;
GetMin(a, b, c);
}
}

Вот, придумал кратчайший вариант решения 2 задачи, оцените)

FierCer 16 авг 2016 07:51
xD Еще не совсем отупел xD
Задача 3

public static int NumFibonachi(int num)
{
if (num > 2)
{
return (NumFibonachi(num - 1) + NumFibonachi(num - 2));
}
else
return (1);
}

Devo4ka 08 июн 2016 15:39

public static int getF(int index){
int n = 10;
int ind;
int[] mas = new int[n];
mas [0] = mas [1] = 1;
for (int i = 2; i < n; i++)
mas [i] = mas [i - 1] + mas [i - 2];

for (int k = 0; k < n; k++)
Console.Write (mas [k]+" ");
Console.WriteLine ();
do{
Console.WriteLine ("Введте номер элемента:");
ind = Convert.ToInt32 (Console.ReadLine ());
}
while(ind>n || ind<1);
return mas[ind-1];
}

Devo4ka 08 июн 2016 14:52

public static int getF(int[] mas, int index){
return mas[index-1];
}

public static void Main (string[] args){

int n = 10;
int[] mass = new int[n];
mass [0] = 1;
mass [1] = 1;
for(int i=2; i<n; i++)
mass [i] = mass [i - 2] + mass [i - 1];
for(int i=0;i<n;i++) Console.Write (mass [i]+" ");
Console.WriteLine ();

int index;
Console.WriteLine ("Введите порядковый номер элемента:");
index = Convert.ToInt32 (Console.ReadLine ());
if (index <= n + 1 && index >= 1)
Console.WriteLine ("Элемент ряда Фибоначи под номером "+index+" = "+getF (mass, index));
else
Console.Write ("Элемента под данным номером в списке нет!");
}

Татьяна 07 июн 2016 23:02
public static int ReturnFibonachhi(int sum,int number, int number1)
{
number = 1;
number1 = 1;
for (int i = 1; i < 25; i++)
{
sum = number + number1;
number = number1;
number1 = sum;
Console.WriteLine(sum);
}
return sum;
}
static void Main(string[] args)
{
Console.WriteLine("1");
Console.WriteLine("1");
int number = 0;
int number1 = 0;
int sum = 0;
Console.WriteLine(ReturnFibonachhi(sum, number,number1));
Console.ReadKey();
}
}

Татьяна 07 июн 2016 21:28
public static int ChangeOfNumber(int[] array)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == 55)
{
array[i] = -55;
}
}
return 0;
}
static void Main(string[] args)
{
int[] array = { 55, 99, 53,54,75,5,99 };
int number = 0;
number=ChangeOfNumber(array);
foreach (int arrayChange in array)
{
Console.WriteLine(arrayChange);
}
Console.ReadKey();
}

Татьяна 07 июн 2016 20:38
public static int MinOfThree(int[] array)
{
int min = array[0];
for (int i = 1; i < array.Length; i++)
{
if (min > array[i])
{
min = array[i];
}
}
return min;
}
static void Main(string[] args)
{
int[] array = { 55, 99, 53 };
Console.WriteLine(MinOfThree(array));
Console.ReadKey();
}

Devo4ka 07 июн 2016 16:02

public static void neg(int[] array,int tmp){
for(int i=0;i<array.Length;i++){
if (array [i] == tmp)
array [i] = -array [i];
Console.Write (array [i]+" ");
}
}
public static void Main (string[] args){
int[] mas = { 2, 3, 4, 2, 43, 2, 3};
neg (mas,2);

}

SamH 03 июн 2016 20:32
Автор, здравствуйте!
Мне понравился Ваш курс, к сожалению, его не было 3 года назад(, когда я был на этом уровне.
Так что я, собственно, хотел. Почему функция, если правильное название метод? Меня это возмутило, если честно. Возможно, у Вас была причина назвать их по-другому. Если я ошибаюсь, поправьте...)

Steyrix 27 май 2016 11:00
По поводу чисел Фибоначи, эту задачу можно решить гораздо проще при помощи рекурсии. Пользуйтесь. Код рабочий.
public static int fibo(int n)
{
if (n == 1)
{
return 1;
}
else if (n == 2)
{
return 1;
}
else
{
return fibo(n - 2) + fibo(n - 1);
}

}
static void Main(string[] args)
{
int number;
Console.WriteLine("Введите номер числа ряда фибоначи:");
number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(fibo(number));
Console.ReadKey();
}

Кироку 22 май 2016 18:00
Оказалась не самой простой для меня задачей, но я её сделал, поэтому решил выложить, может кому понадобится. А заодно проверьте на ошибки эту задачу, кто хорошо разбирается, пожалуйста.

class Program
{
public static long FibonachiSum(long[] fibonachi, long Current)
{
fibonachi[1] = 1;
fibonachi[2] = 1;
for (long i = 2; i < fibonachi.Length; i++)
fibonachi[i] = fibonachi[i - 1] + fibonachi[i - 2];
Console.Write(fibonachi[Current]);
return 0;
}
static void Main(string[] args)
{
Console.WriteLine("Введите длину ряда Фибоначчи: ");
long kolvo = Convert.ToInt32(Console.ReadLine());
long[] fibonachi = new long[kolvo];
Console.WriteLine("Введите искомый элемент ряда Фибоначчи: ");
long Current = Convert.ToInt32(Console.ReadLine());
FibonachiSum(fibonachi, Current);
Console.ReadKey();
}
}

poohcoolguy 19 май 2016 21:31
простите исправляюсь:

class Program
{
public static void ChangePolarity(int[] massive, int check)
{
for (int i=0; i < massive.Length; i++)
{
if (massive[i] == check)
massive[i] = -massive[i];
}
}

public static void GetMassive(int[] mymassive)
{
for (int i = 0; i < mymassive.Length; i++)
{
Console.WriteLine(mymassive[i]);
}
}
public static int GetMaxin3 (int a, int b, int c)
{
int max = a;
if (b > a)
max = b;
else if (c > a)
max = c;
if (c > b)
max = c;
return max;
}
public static long GetFibonachi (long[] fibonachi, long fi)
{
long fib = 1;
fibonachi[0] = 1;
fibonachi[1] = 1;
for (int i=2; i < fi; i++)
{
fibonachi[i] = fibonachi[i - 2] + fibonachi[i - 1];
fib = fibonachi[i];
}
return fib;
}

static void Main(string[] args)
{
int[] somemassive = { 3, 32, 16, 27, 55, 43, 2, 34, -1 };
int number, MAX, a1, b1, c1;
long FI, FIB;
Console.WriteLine("1.) Имеется массив с числами:");
GetMassive(somemassive);
Console.WriteLine("Введите число, знак которого нужно сменить на противоположный");
ChangePolarity(somemassive, number = Convert.ToInt32(Console.ReadLine()));
Console.WriteLine("Теперь массив имеет такой вид");
GetMassive(somemassive);
Console.WriteLine("2.) Введите три любых числа (каждое на новой строке) и я найду наибольшее ");
MAX = GetMaxin3(a1 = Convert.ToInt32(Console.ReadLine()) ,b1 = Convert.ToInt32(Console.ReadLine()), c1 = Convert.ToInt32(Console.ReadLine()));
Console.WriteLine("Наибольшее из трех введенных вами чисел " + MAX);
Console.WriteLine("3.) Я найду выбранное вами по счету число Фибоначчи в последовательности 1, 1, 2, 3, 5, 8, 13...");
Console.WriteLine("Введите порядковый номер Фибоначчи:");
FI = Convert.ToInt32(Console.ReadLine());
long[] Fibonachi = new long[FI];
FIB = GetFibonachi(Fibonachi, FI);
Console.WriteLine("Значение числа Фибоначчи с порядковым номером " + FI + " равняется " + FIB);
Console.WriteLine("Для выхода нажмите любую клавишу...");
Console.ReadKey();

}
}

poohcoolguy 19 май 2016 21:04

class Program
{
public static void ChangePolarity(int[] massive, int check)
{
for (int i=0; i < massive.Length; i++)
{
if (massive[i] == check)
massive[i] = -massive[i];
}
}

public static void GetMassive(int[] mymassive)
{
for (int i = 0; i < mymassive.Length; i++)
{
Console.WriteLine(mymassive[i]);
}
}
public static int GetMaxin3 (int a, int b, int c)
{
int max = a;
if (b > max)
max = b;
else if (c > max)
max = c;
return max;
}
public static int GetFibonachi (int[] fibonachi, int fi)
{
int fib = 1;
fibonachi[0] = 1;
fibonachi[1] = 1;
for (int i=2; i < fi; i++)
{
fibonachi[i] = fibonachi[i - 2] + fibonachi[i - 1];
fib = fibonachi[i];
}
return fib;
}

static void Main(string[] args)
{
int[] somemassive = { 3, 32, 16, 27, 55, 43, 2, 34, -1 };
int number, MAX, a1, b1, c1, FI, FIB;
Console.WriteLine("1.) Имеется массив с числами:");
GetMassive(somemassive);
Console.WriteLine("Введите число, знак которого нужно сменить на противоположный");
ChangePolarity(somemassive, number = Convert.ToInt32(Console.ReadLine()));
Console.WriteLine("Теперь массив имеет такой вид");
GetMassive(somemassive);
Console.WriteLine("2.) Введите три любых числа (каждое на новой строке) и я найду наибольшее ");
MAX = GetMaxin3(a1 = Convert.ToInt32(Console.ReadLine()) ,b1 = Convert.ToInt32(Console.ReadLine()), c1 = Convert.ToInt32(Console.ReadLine()));
Console.WriteLine("Наибольшее из трех введенных вами чисел " + MAX);
Console.WriteLine("3.) Я найду выбранное вами по счету число Фибоначив последовательности 1, 1, 2, 3, 5, 8, 13...");
Console.WriteLine("Введите пордковый номер Фибоначи:");
FI = Convert.ToInt32(Console.ReadLine());
int[] Fibonachi = new int[FI];
FIB = GetFibonachi(Fibonachi, FI);
Console.WriteLine("Значение числа Фибоначи с порядковым номером " + FI + " равняется " + FIB);
Console.WriteLine("Для выхода нажмите любую клавишу...");
Console.ReadKey();

}
}

up 13 май 2016 13:27
Подскажите, пожалуйста, что здесь не так.

class Program
{

public static void ReplaceFive(int[] nums)
{
//int five = 5;
for (int i = 0; i < nums.Length; i++)
{

if (nums[i] == 5)
{
nums[i] *= (-1);
}
}
}

static void Main(string[] args)
{
int[] numsu = { 1, 2, 3, 45, 67, 5, 5, 5, 5, 578, 78, 35, 5, 45, 9 };
ReplaceFive(numsu);
Console.WriteLine(numsu);
Console.ReadKey();

}
}

Stepan 11 апр 2016 01:50

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Project3
{
class massivy
{
public static void Main()
{
int[] numbers = { Convert.ToInt32(Console.ReadLine()), Convert.ToInt32(Console.ReadLine()), Convert.ToInt32(Console.ReadLine())};
int min = FindMin(numbers);
Console.WriteLine(min);
Console.Read();
}
static int FindMin(int[] numbers)
{
int min = numbers[0];
for(int i = 0; i < numbers.Length; i++)
{
if (numbers[i] < min)
{
min = numbers[i];
}
}
return min;
}

}
}

Степан 11 апр 2016 01:35

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Project3
{
class massivy
{
public static void Main()
{
int[] numbers = { 0, 1, 2, 3, 4, 5, 6, 7 };
int msign = ReverseSign(numbers,Convert.ToInt32(Console.ReadLine()));
Console.WriteLine(msign);
Console.Read();
}
static int ReverseSign(int[] numbers,int sign)
{
int msign = 0;
for(int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == sign)
{
numbers[i] = sign * (-1);
msign = numbers[i];
}
}
return msign;
}

}
}

малыш 10 апр 2016 03:09
Подскажите почему выдает ошибку:ни одна из перегрузок метода " " не принимает "энное число" аргументов?


public static int Changenumber(int[] numbers, int number, int newnumber)
{
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == number)
numbers[i] = 0 - newnumber;
}

return newnumber;
}
static void Main(string[] args)
{
int[] numbers = { 5, 7, 9 };
int newnumber;
newnumber = Changenumber(numbers);
Console.WriteLine(Changenumber(numbers));
Console.ReadLine();

Александр 23 мар 2016 19:06

class Program
{
public static void ChangeSign (int[] n)
{
for (int i = 0; i < n.Length; i++)
{
n[i] *= -1;
}
}

public static int GetTriplMin(int a, int b, int c) //для упрощения не рассматриваются случаи равенства
{
int min = a < b ? a : b;
return min = min < c ? min : c;
}

public static int GetFibonachiByIndex (int Index)
{
int f, f1 = 0, f2 = 1 , i = 1;

while (i <= Index)
{
f = f1;
f1 = f2;
f2 += f;
i++;
}

return f1;
}
static void Main(string[] args)
{
int[] n1 = { 23, 467, 65, 89, 34, 6, 9 },
n2 = { 23, 34, 234, 23, 6, 45, 3 },
ns = new int[7];

Console.WriteLine("Номер элемента ряда Фибоначчи: ");
Console.WriteLine("Элемент равен "+GetFibonachiByIndex(Convert.ToInt32(Console.ReadLine())));
Console.ReadKey();
}
}

Вадим 19 фев 2016 21:02

using System;
using System.Collections.Generic;

namespace Lesson6
{
public class Program
{
/*
1) Напишите функцию, которая будет менять в массиве целых чисел все элементы,
которые равны указанному значению (аргумент) на противоположное значение по знаку.
Например, все элементы массива которые равны 5, будут меняться на -5.

2) Напишите функцию, которая будет находить минимальное число из трех.

3) Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.
Ряд Фибоначчи – это ряд, в котором каждый следующий элемент равен сумме двух предыдущих. 1 1 2 3 5 8 13 21…
Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.*/
public static void Main(string[] args)
{
int[] numbers = { 0, -3, 32, -6, 27, 55, 43, -2, 34 };
Program.reNumber(numbers);
foreach (int i in numbers)
{
Console.WriteLine(i.ToString());
}
Console.WriteLine("Минимальное число = " + Program.minValue(numbers));

Console.WriteLine("Седьмой элемент ряда Фибоначи равен " + Program.numFibonacci(8));
Console.ReadKey();

}

public static void reNumber(int[] array)
{
for (int i = 0; i < array.Length; i++)
{
array[i] *= -1;
}


}

public static int minValue(int[] array)
{
int min = array[0];
for (int i = 1; i < array.Length; i++)
{
if (array[i] < min)
{
min = array[i];
}

}
return min;
}

public static int numFibonacci(int count)
{
List<int> array = new List<int>();
array.Add(1);
array.Add(1);
int member = 0;
for (int i = 0; i < count - 1; i++)
{
member = array[i] + array[i + 1];
array.Add(member);
}
array.Clear();
return array[count - 1];
}

}
}

Vova 14 фев 2016 00:24
Короткое решение 3-й задачи:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication13
{
class Program
{
static int fib(int n)
{
return n > 1 ? fib(n - 1) + fib(n - 2) : n;
}
public static void Main(string[] args)
{
Console.WriteLine("Укажите элеммент ряда Фибоначчи:");
int n;
n = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(fib(n));
Console.ReadKey();
}
}
}

Vova 13 фев 2016 21:59

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
class Program
{

static void Main(string[] args)
{
int[] massive = { 1, 3, 4, 5, 7 };
for (int i = 0; i < massive.Length; i++)
{
Console.WriteLine(massive[i] * (-1));
}
Console.ReadKey();
}
}
}


voloshyn-i 09 фев 2016 15:49
class Program

{
public static int Fibbo(int j)
{
int[] array = new int[j+1];
array[0] = 1; array[1] = 1;
for (int i = 2; i < j; i++)
{
array[i] = array[i-1] + array[i-2];
}
return array[j-1];
}

static void Main(string[] args)
{
Console.WriteLine("Введите елемент масива:");
int j = Convert.ToInt32(Console.ReadLine());

if (j == 1 && j == 2)
{
Console.WriteLine("a(" + j + ") = 1");
}
else
{
Console.WriteLine("a(" + j + ") = " + Fibbo(j));
}
Console.ReadKey();
}
}

Задание 2 01 фев 2016 00:46
{
class Program

{
public static int MinEl(int[] array)
{
int min = array[0];
for (int i = 1; i < array.Length; i++)
{

if (min > array[i])
{
min = array[i];
}
}
return min;
}

static void Main(string[] args)
{
int[] numbers = new int[3];
Console.WriteLine("Введите три елемента:");

for (int i = 0; i < 3; i++)
{
numbers[i] = Convert.ToInt32(Console.ReadLine());
}


int res = MinEl(numbers);
Console.WriteLine(res);

Console.ReadKey();
}
}
}

NewOne 31 янв 2016 20:56
Все правильно или нет?

namespace Урок_8_задача_3_Ряд_Фибоначчи
{
class Program
{
public static int GetFibonacciNumber(int number)
{
int[] fibNumb = new int [number];
fibNumb[0] = 1;
fibNumb[1] = 1;
for (int i = 2; i <= fibNumb.Length; i++)
{
fibNumb[i] = fibNumb[i-1] + fibNumb[i-2];
Console.WriteLine(fibNumb[i - 1] + fibNumb[i - 2]);
}
return fibNumb [fibNumb.Length-1];
}

static void Main(string[] args)
{
int number;
Console.WriteLine("Введите порядковый номер элемента: ");
number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(GetFibonacciNumber(number));
Console.ReadKey();
}
}
}

NewOne 29 янв 2016 21:55
Выводит:
-2
-4
-6
-8
-10
-2
-4
-6
-8
-10
-10
если убрать "Console.WriteLine(negNumb);" из функции, покажет -10. Что где убрать или добавить, чтоб каждый элемент был отрицательным???:

class Program
{
public static int NegativeValue(int[]numbers, int negNumb)
{
foreach (int el in numbers)
{
if (el > negNumb)
{
negNumb = el * (-1);
Console.WriteLine(negNumb);
}
}
return negNumb;
}
static void Main(string[] args)
{
int[] numbers = { 2, 4, 6, 8, 10};
int negNumb = 0;
negNumb = NegativeValue(numbers, negNumb);
Console.WriteLine(NegativeValue(numbers, negNumb));
Console.ReadLine();
}
}

voloshyn-i 26 янв 2016 00:01
class Program

{
public static int GetAr(int[] array, int a)
{
for (int i = 0; i < array.Length; i++)
{
if (a == array[i])
{
array[i] *= -1;
}
}
return 0;
}

static void Main(string[] args)
{
int a;
Console.WriteLine("Введите целое число:");
a = Convert.ToInt32(Console.ReadLine());
int[] array = { 4, 6, 7, 67, 5, 9, 89, 5 };
GetAr(array, a);
for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
Console.ReadKey();
}
}

Игорь 20 янв 2016 14:49
class Program
{
public static int Object(int[] array, int c)
{
int max = array[c];
return max;
}

static void Main(string[] args)
{
int[] massiv = new int[20];
massiv[0] = 1;
massiv[1] = 1;
for (int i = 2; i < massiv.Length; i++)
{
massiv[i] = massiv[i - 1] + massiv[i - 2];
}
Console.WriteLine(Object(massiv,18));


}
}
}

Vaniok 10 янв 2016 17:34
ЗАВДАННЯ 2(не так спершу умову зрозумів)
class Program
{
public static int GetMin(int[] array)
{
int min=array[0];
for(int i=0;i<array.Length;i++)
{
if (array[i] < min)
min = array[i];
} return min;
}

static void Main(string[] args)
{
int[] VALUE = new int[3];

Console.WriteLine("enter 3 value");
for (int i = 0; i < VALUE.Length; i++)
{
VALUE[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("MIN VALLUE IN 3 NUMBERS=" + GetMin(VALUE));
Console.ReadKey();

Vaniok 10 янв 2016 17:03
Завдання 2
{
class Program
{
public static int GetMin(int[] Array)
{
int min = Array[0];
for (int i = 0; i < Array.Length; i++)
{
if (Array[i] < min)
min = Array[i];
}
return min;
}
static void Main(string[] args)
{
int[] DIGIT = { 3, 345, 13, 2 };
int min;
min = GetMin(DIGIT);
Console.WriteLine("min value=" + GetMin(DIGIT));

Console.ReadKey();
}
}
}

Баринов ФИлипп 09 янв 2016 22:38
Подскажите пожалуйста... я не совесм могу понять из какой это темы. Почему тут получается именно то, что должно... почему так работает и покажите тему откуда это взято

ReplaceName(names, "Andrey", "Nikolay"); // откуда такая логика?
ReplaceName(names, "Ivan", "Vladimir");

Евгений 08 янв 2016 15:17
public static void Main()
{
Console.WriteLine("Task 1");
fnTask1();
Console.WriteLine("Task 2");
fnTask2();
Console.WriteLine("Task 3");
fnTask3();

}

private static void fnTask1()
{
string sTmpData = "";
int nConvertNumber = 0;
int[] aData = new int[3];
bool bConvert = false;

Console.Write("Enter number to convert : ");
sTmpData = Console.ReadLine();
nConvertNumber = Convert.ToInt32(sTmpData);
for(int i = 0; i < aData.Length; i++)
{
Console.Write(i + " = ");
aData[i] = Convert.ToInt32(Console.ReadLine());
}

for(int i = 0; i < aData.Length; i++)
{
if(aData[i] == nConvertNumber)
{
aData[i] *= -1;
bConvert = true;
}
Console.Write(i + " = " + aData[i] + " ");
}
if(bConvert == false)
{
Console.Write("No number to convert");
}
Console.WriteLine();
Console.ReadKey();
}

private static void fnTask2()
{
int nMin = int.MaxValue;
int[] aData = new int[3];

Console.WriteLine("Enter number : ");
for(int i = 0; i < aData.Length; i++)
{
Console.Write(i + " = ");
aData[i] = Convert.ToInt32(Console.ReadLine());
if(nMin > aData[i])
{
nMin = aData[i];
}
}
Console.WriteLine("Min number = " + nMin);
Console.ReadKey();
}

private static void fnTask3()
{
List<int> aFib = new List<int>();
int nNumOfFib;
int nLenghtOfFib;
int nPrevious1 = 1;
int nPrevious2 = -1;
int nCurrent;
Console.Write("Enter lenght sequence of Fibbanachi : ");
nLenghtOfFib = Convert.ToInt32(Console.ReadLine());
do
{
Console.Write("Enter the sequence number in the sequence of Fibbanachi : ");
nNumOfFib = Convert.ToInt32(Console.ReadLine());
if(nLenghtOfFib < nNumOfFib)
{
Console.WriteLine("\t !Out of range equence of Fibbanachi!");
}

}while(nLenghtOfFib < nNumOfFib);

for(int i = 0; i < nLenghtOfFib; i++)
{
nCurrent = nPrevious1 + nPrevious2;

aFib.Add(nCurrent);

nPrevious2 = nPrevious1;
nPrevious1 = nCurrent;
}
Console.Write("Fibbonachi sequince : ");
for(int i = 0; i < nLenghtOfFib; i++)
{
Console.Write(aFib[i] + " ");
}
Console.WriteLine("");
if(nNumOfFib == 0)
{
Console.Write("Sequence number in the sequence of Fibbanachi " + nNumOfFib + " = " + aFib[nNumOfFib]);
}
else
{
Console.Write("Sequence number in the sequence of Fibbanachi " + nNumOfFib + " = " + aFib[nNumOfFib-1]);
}
Console.ReadKey();

neronovs 03 янв 2016 09:54
Задача №3

class Program
{
public static int Fibonacci(int[] array)
{
for (int i = 2; i < 10; i++)
{
array[i] = (array[i-2]) + (array[i-1]);
}
return array[9];
}

static void Main(string[] args)
{
int[] array = new int[10];
Console.WriteLine("Input 2 numbers to create the Fibonacci row up to ... symbols");
for (int i = 0; i < 2; i++)
{
array[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("_______________________________________");
Console.WriteLine(array[0]);
Fibonacci(array);
for (int i = 1; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
Console.ReadKey();

}

neronovs 03 янв 2016 09:53
Задача №2

class Program
{
public static int GetMin(int[] array)
{
int Min = Convert.ToInt32(array[0]);
for (int i = 0; i < array.Length; i++)
{
if (array[i] < Min)
Min = array[i];
}
return Min;
}

static void Main(string[] args)
{
int[] array = new int[3];
Console.WriteLine("Enter 3 numbers to find the minimum of them then");
for (int i = 0; i < array.Length; i++)
{
array[i] = Convert.ToInt32(Console.ReadLine());
}

for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
Console.WriteLine("The minimum number is " + GetMin(array));
Console.WriteLine(array.Length);
Console.ReadKey();
}
}

neronovs 03 янв 2016 09:52
Задание №1

class Program
// The program is checking the numbers from the array to the input multiplication (Приграмма проверяет данные в массиве введенной кратности)
{
public static int GetAppr(int[] array, int a)
{
for (int i = 0; i < array.Length; i++)
{
int b = array[i];
if (b % a == 0)
array[i] *= -1;
}
return array[2];
}

static void Main(string[] args)
{
int a;
Console.WriteLine("Input the multiplication (кратность)");
a = Convert.ToInt32(Console.ReadLine());
int[] array = {4, 6, 7};
GetAppr(array, a);
for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
Console.ReadKey();
}
}

Valet 25 дек 2015 15:29

static void Main(string[] args)
{

Console.WriteLine("Введите искомый елемент");
int size = int.Parse(Console.ReadLine());
int[] mas = new int[size];
Console.WriteLine(GetelementFibonachi(mas,size));
}
public static int GetelementFibonachi(int[] arr, int size)
{

arr[0] = 1;
arr[1] = 1;
for (int i = 2; i <arr.Length; i++)
{
arr[i] = arr[i - 1] + arr[i - 2];

}
return arr[arr.Length-1];
}

Valet 25 дек 2015 15:14

static void Main(string[] args)
{
int[] mas=new int[3];
Console.WriteLine("Введите три целых числа");
for (int i = 0; i < mas.Length; ++i)
{
mas[i] = int.Parse(Console.ReadLine());
}
Console.Write("Минимальное число из трех: "+" ");
Console.WriteLine(GetMinNumber(mas));
}
static int GetMinNumber(int[] arr)
{
int min = arr[0];
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] <min)
arr[i] =min;
}
return min;
}

Valet 25 дек 2015 15:07

static void Main(string[] args)
{
int[] mas=new int[10];

Random rand=new Random();
Console.WriteLine("Элементы массива:");
for (int i = 0; i < mas.Length; ++i)
{
mas[i] = rand.Next(0, 10);
Console.Write(mas[i]+" ");
}
Console.WriteLine();
ChangeElement(mas, 5);
foreach(int i in mas)
Console.Write(i+" ");
}
static void ChangeElement(int[] arr, int a)
{
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] == a)
arr[i] = (-a);
}
}

Баринов ФИлипп 22 дек 2015 19:11
public static int max1 (int[] num)
{
int max = num[0];

for(int i=0;i <num.Length; i++)
{
if (num[i] > max)
max = num[i];

}

return max;

}
static void Main (string []args)
{
int d;
int[] num = { 36, 24, 48 };
d = max1(num);
Console.WriteLine(max1(num));
Console.ReadKey();

Баринов ФИлипп 22 дек 2015 17:24
public static int neg (int[] num)
{
int y = num[0];
for (int i =1; i<num.Length; i++)
{
if (num[i] > y )
y = num[i]*(-1);
Console.WriteLine(y);
}
return y;
}
static void Main(string[] args)
{
int[] num = { 0, 1, 2, 3, 4 };
int y;
y = neg(num);
Console.ReadKey();

Никита 01 дек 2015 22:30
2-е задание. Самый простой код


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication31
{
class Program
{
public static int Mini(int x,int y )
{
Console.WriteLine(Math.Min(x, y));
return y;
}
static void Main()
{
Mini(9,8);
Console.ReadKey();
}
}
}


valbort 20 ноя 2015 01:43
Я не очень понимаю словосочтание "возвращает значение". Будьте добры, кто понимает, обьясните, пожалуйста!

Gangsy 08 ноя 2015 21:22
Задание №1

public static void ChangeNumber(int[] array, int number)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == number)
{
array[i] = array[i] * -1;
}
}
}
static void Main(string[] args)
{
int[] array = { 24, 4, 6, 5, 81, 94, 5, 98, 100, 5 };
Console.Write("Введите число: ");
int number = Convert.ToInt32(Console.ReadLine());
ChangeNumber(array, number);
for (int i = 0; i < array.Length; i++)
{
Console.Write(array[i] + "\n");
}
Console.ReadKey();
}

oneWave 08 ноя 2015 13:10
3 задание

using System;

namespace ConsoleApplication9 {
class Program {
public static int GetFibbo (int enteringElement) {
int result = 0;
int firstElement = 0, secondElement = 1;
for (int i = 1; i <= enteringElement; i++) {
firstElement = result + secondElement;
result = secondElement;
secondElement = firstElement;
}
return result;
}
public static void Main (string[] args) {
Console.WriteLine("Please enter your Fibbo element: ");
int enteringElement;
enteringElement = Convert.ToInt32(Console.ReadLine());
enteringElement = GetFibbo(enteringElement);

Console.WriteLine("Your entering element = " + enteringElement);
Console.ReadKey();
}
}
}

oneWave 08 ноя 2015 11:44
Второе задание


using System;

namespace ConsoleApplication9 {
class Program {
public static int GetMin() {
int firstValue, secoondValue, thirdValue;
int min = 0;

firstValue = Convert.ToInt32(Console.ReadLine());
secoondValue = Convert.ToInt32(Console.ReadLine());
thirdValue = Convert.ToInt32(Console.ReadLine());

if (firstValue < secoondValue && firstValue < thirdValue) {
min = firstValue;
Console.WriteLine("First value is lower");
}else if (secoondValue < firstValue && secoondValue < thirdValue) {
min = secoondValue;
Console.WriteLine("Second value is lower");
}else if (thirdValue < secoondValue && firstValue > thirdValue) {
min = thirdValue;
Console.WriteLine("Third value is lower");
}
return min;
}
public static void Main (string[] args) {
int firstValue, secoondValue, thirdValue;
int min = 0;
GetMin();
Console.ReadKey();
}
}
}

vostok7777 27 окт 2015 17:27
Написал код. Вроде работает, но все уместилось без отдельной функции. Как правильно выделить часть кода в отдельную функцию?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication14
{
class Program
{


static void Main(string[] args)
{

int k = 0;
Console.WriteLine("Введите порядковый номер элемента Ряда Фибоначчи "+"\n");
k = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
{
int[] num = new int[k];
num[0] = 1;
num[1] = 1;
for (int i = 2; i!= num.Length; i++)
{
num[i] = num[i - 1] + num[i - 2];

}
Console.WriteLine("Этому порядковому номеру элемента соответствует число: ");
Console.WriteLine("\n" + num[k-1]);

Console.ReadLine();

}
}
}
}


vostok7777 26 окт 2015 20:06
Задача 2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication13
{
class Program

{
public static int Max (int x, int y, int z)
{
int m = 0;
if ((x>=y)&&(x>=z))
m=x;
else if ((y>=x)&&(y>=z))
m= y;
else if ((z>=x)&&(z>=y))
m= z;
return m;
}
static void Main(string[] args)
{
int a, b, c;
Console.WriteLine("Введите число ");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите еще одно число ");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите последнее число ");
c = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("Наибольшее из введеных вами чисел " + Max(a, b, c));
Console.ReadLine();


}
}
}


vostok7777 26 окт 2015 18:26
Привет всем! Добрые люди подскажите почему не работает

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication12
{
class Program
{
public static int[] change (int []massiv, int s, int c)
{
for(int i = 0; i<massiv.Length; i++)
{
if (massiv[i] == s)
massiv [i] = c;
}
return massiv;
}
public static void Main(string[] args)
{

int [] massiv = { 24, 4, 6, 5, 81, 94, 5, 98, 100, 5 };

Console.WriteLine( change (massiv, 5 ,-5));
Console.ReadKey();



}
}
}


Andronik 26 окт 2015 16:55
Никак не могу понять как сделать этот ряд Фибоначчи, помогите понять

Hans Deininger 18 окт 2015 13:20

public static int MinOfThree(int a, int b, int c)
{
return (a < b) ? ((a < c) ? a : c) : ((b < c) ? b : c);
}

Hans Deininger 18 окт 2015 13:13

public static int Fibonnachi(int x)
{
int result=1, prevResult=1, ppResult=0;
for (int i = 0; i < x; i++)
{
result = prevResult + ppResult;
ppResult = prevResult;
prevResult = result;
}

return result;
}

aggro 17 окт 2015 16:05


class Func
{
public static void Three()
{
Console.WriteLine("Введите три числа\n");
Console.Write("a:");
int a = Convert.ToInt32(Console.ReadLine());
Console.Write("b:");
int b = Convert.ToInt32(Console.ReadLine());
Console.Write("c:");
int c = Convert.ToInt32(Console.ReadLine());

if ((a < b) && (a < c))
Console.WriteLine("Переменная {0} является наименьшей", a);
else if ((b < a) && (b < c))
Console.WriteLine("Переменная {0} является наименьшей", b);
else if ((c<a)&&(c<b))
Console.WriteLine("Переменная {0} является наименьшей", c);
}
static void Main(string[] args)
{
Three();
}
}




aggro 17 окт 2015 15:50

class Program
{
public static void NegVal(int[] array, int value, int newValue)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == value)
array[i] = newValue;
}
}
static void Main(string[] args)
{
int[] nums = { 25, 12, 35, 12, 53, 34, 44, 12 };
Console.Write("Массив nums до вызова методе NegVal\n");
for (int i = 0; i < nums.Length; i++)
Console.WriteLine(nums[i]);

NegVal(nums, 12, -12);
Console.Write("Массив nums после вызова метода NegVal\n ");
for (int i = 0; i < nums.Length; i++)
Console.WriteLine(nums[i]);

Console.ReadKey();
}
}


vladislav 17 окт 2015 14:39
public static void ReplaceOppose (int[] mass)
{
for (int i = 0; i != mass.Length; i++)
{
mass[i] = - (mass[i]);
Console.Write(" {0} ",mass[i]);
}
}
static void Main(string[] args)
{
int[] array = { 3, 8, 9, 7, 1, 5 };
ReplaceOppose(array);
Console.ReadLine();
}

Dipe 15 окт 2015 17:54
Исправлено

class MyClass
{
public void Function()
{
int a, b, c;
Console.WriteLine("Enter your numbers: ");
Console.Write("a: ");
a = Convert.ToInt32(Console.ReadLine());
Console.Write("b: ");
b = Convert.ToInt32(Console.ReadLine());
Console.Write("c: ");
c = Convert.ToInt32(Console.ReadLine());

if (a < b)
{
if (a < c)
Console.WriteLine("Lowest number is: " + a);
else
Console.WriteLine("Lowest number is: " + c);
}
else if (b < c)
{
if (b < a)

Console.WriteLine("Lowest number is: " + b);
}
else //Добавил вариант что a > b
{
Console.WriteLine("Lowest number is: " + c);
}
}
class Program
{
static void Main(string[] args)
{
MyClass props = new MyClass();
props.Function();
Console.ReadLine();
}
}
}

Dipe 15 окт 2015 17:53
Исправлено
class MyClass
{
public void Function()
{
int a, b, c;
Console.WriteLine("Enter your numbers: ");
Console.Write("a: ");
a = Convert.ToInt32(Console.ReadLine());
Console.Write("b: ");
b = Convert.ToInt32(Console.ReadLine());
Console.Write("c: ");
c = Convert.ToInt32(Console.ReadLine());

if (a < b)
{
if (a < c)
Console.WriteLine("Lowest number is: " + a);
else
Console.WriteLine("Lowest number is: " + c);
}
else if (b < c)
{
if (b < a)

Console.WriteLine("Lowest number is: " + b);
}
else //Добавил вариант что a > b
{
Console.WriteLine("Lowest number is: " + c);
}
}
class Program
{
static void Main(string[] args)
{
MyClass props = new MyClass();
props.Function();
Console.ReadLine();
}
}
}

Dipe 15 окт 2015 17:46
2 Задание как можно проще


class MyClass
{
public void Function()
{
int a, b, c;
Console.WriteLine("Enter your numbers: ");
Console.Write("a: ");
a = Convert.ToInt32(Console.ReadLine());
Console.Write("b: ");
b = Convert.ToInt32(Console.ReadLine());
Console.Write("c: ");
c = Convert.ToInt32(Console.ReadLine());

if (a < b)
{
if (a < c)
Console.WriteLine("Lowest number is: " + a);
else
Console.WriteLine("Lowest number is: " + c);
}
else if (b < c)
{
if (b < a)

Console.WriteLine("Lowest number is: " + b);
}
}
class Program
{
static void Main(string[] args)
{
MyClass props = new MyClass();
props.Function();
Console.ReadLine();
}
}
}

Дмитрий 11 окт 2015 06:06

using System;

namespace EducationApp2
{
class Program
{

public static void FindMin(int a, int b, int c)
{
if (a < b && a < c)
Console.WriteLine("{0} меньшее из чисел", a);
else if (b < a && b < c)
Console.WriteLine("{0} меньшее из чисел", b);
else if (c < a && c < b)
Console.WriteLine("{0} меньшее из чисел",c);
else Console.WriteLine("Есть 2 или 3 равных числа. Ничего пока не могу с этим поделать, сорян )))");
}

static void Main()
{
Console.WriteLine("Введите три числа:");
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
FindMin(a, b, c);

Console.ReadKey();

}
}
}


Дмитрий 11 окт 2015 04:51
Как здесь можно выдрать отрицательные числа после преобразования и вывести их отдельно?

using System;

namespace EducationApp
{
class Program
{

public static void Replace(int[] num)
{


for (int i = 0; i < num.Length; i++)
{
if (num[i] == 5)
{
num[i] = -num[i];
}
}
}

static void Main()
{
int[] num = { 5, 44, 524, 5, 23, 5, 74, 5 };

Replace(num);
for (int i = 0; i < num.Length; i++)
{
Console.WriteLine(num[i]); //выводит массив с заменой 5 на - 5
}
Console.ReadKey();
}
}
}


Vitalia 07 сен 2015 23:35
using System;
class pow
{
public static int GetMax(int[] array,int per)
{
int a = 0;
int prot = -per;
for (int i = 0; i < array.Length; i++)
{
if (array[i] == per)
array[i] = prot;
a = array[i];
}
return a;
}

public static void Main()
{
int[] array = { 1, 2,3,5,6,7,8,8,8,8,8,9,90,0,0,6,5,4,3 };
GetMax(array,7);
for (int i = 0; i < array.Length; i++)
{
Console.Write(" "+array[i] );
}
}
}

Юрий 07 сен 2015 10:55

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication5
{
class Program
{
public static void RET(int[] fin)
{
Console.WriteLine("Введите элемент :");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Элементу номер " + (a) + " соответствует значение = " + fin[a-1]);

}


static void Main(string[] args)
{
{
int[] fin = new int[20];
fin[0] = 1;
fin[1] = 1;
for (int i = 2; i != fin.Length; i++)
{
fin[i] = fin[i - 1] + fin[i - 2];

}
foreach (int el in fin)
{
Console.WriteLine("\n" + el);
}

RET(fin);
Console.ReadKey();
}
}
}
}

Юрий 07 сен 2015 10:55

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication5
{
class Program
{
public static void RET(int[] fin)
{
Console.WriteLine("Введите элемент :");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Элементу номер " + (a) + " соответствует значение = " + fin[a-1]);

}


static void Main(string[] args)
{
{
int[] fin = new int[20];
fin[0] = 1;
fin[1] = 1;
for (int i = 2; i != fin.Length; i++)
{
fin[i] = fin[i - 1] + fin[i - 2];

}
foreach (int el in fin)
{
Console.WriteLine("\n" + el);
}

RET(fin);
Console.ReadKey();
}
}
}
}

Юрий 07 сен 2015 10:12
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication5
{
class Program
{
public static int Get(int[] array)
{

int a=0;
for (int i = 0; i != array.Length;i++)
{
if (array[i] == 15)
{
array[i]=array[i]*-1;
a = array[i];
}
}
return a;
}
static void Main(string[] args)
{
int[] array = new int [20];
Random rnd = new Random();
for (int i = 0; i !=array.Length; i++)
{
array[i] = rnd.Next(10, 40);
Console.WriteLine("Массив" + " " + array[i]);
}
int a;
a = Get(array);
for (int i = 0; i != array.Length; i++)
{
Console.WriteLine(array[i]);
}
Console.ReadKey();
}
}
}











ROOT 09 авг 2015 21:29
\\Домашнее задание\\

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication26
{
class Program
{
public static void ReturnNumber(int[] array)
{
for (int i = 0; i < array.Length; i ++)
{
if (array[i] == array[i])
array[i] = -array[i];
}
}
public static int ReturnMin(int a, int b, int c)
{
int min;
if (a < b && a < c)
min = a;
else if (b < a && b < c)
min = b;
else
min = c;
return min;
}
public static int Fibonacci(int FibonacciNumb)
{
int[] arrayFib = new int[FibonacciNumb];
int ElementFib = 1;
if (FibonacciNumb > 2)
{
arrayFib[0] = 1;
arrayFib[1] = 1;
for( int i = 2; i < FibonacciNumb; i ++)
{
arrayFib[i] = arrayFib[i - 1] + arrayFib[i - 2];
ElementFib = arrayFib[i];
}
}
return ElementFib;

}
static void Main(string[] args)
{
Console.WriteLine("Homework №1");
//Напишите функцию, которая будет менять в массиве целых чисел все элементы,
//которые равны указанному значению (аргумент) на противоположное значение по знаку.
//Например, все элементы массива которые равны 5, будут меняться на -5.
Console.WriteLine("Дан массив рандомных чисел: ");
Random random = new Random();
int[] array2 = new int[10];
for (int i = 0; i < array2.Length; i ++)
{
array2[i] = random.Next(-10, 10);
Console.Write(array2[i] + ", ");
}
Console.WriteLine("\n\nчтобы преобразовать масив, нажмите 1\nчтобы закончить Homework №1, нажмите 2...");
int NextClose = Convert.ToInt32(Console.ReadLine());
if (NextClose == 1)
{
ReturnNumber(array2);
Console.WriteLine("Новый массив: ");
for (int i = 0; i < array2.Length; i++)
{
Console.Write(array2[i] + ", ");
}
Console.WriteLine("\nчтобы перейти к следующему домашнему заданию, нажмите любую клавишу...");
Console.ReadKey();
Console.Clear();
}
else if (NextClose == 2)
{
Console.Clear();
}
Console.WriteLine("Homework №2");
//Напишите функцию, которая будет находить минимальное число из трех.
Console.WriteLine("\nВведите три числа: ");
int number_1 = Convert.ToInt32(Console.ReadLine());
int number_2 = Convert.ToInt32(Console.ReadLine());
int number_3 = Convert.ToInt32(Console.ReadLine());
ReturnMin(number_1, number_2, number_3);
Console.WriteLine("Наименьшее число = " + ReturnMin(number_1, number_2, number_3));
Console.WriteLine("\nчтобы перейти к следующему домашнему заданию, нажмите любую клавишу...");
Console.ReadKey();
Console.Clear();
Console.WriteLine("Homework №3");
//Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.
//Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.
Console.Write("Введите номер ряда Фибоначчи, который хотите увидеть: ");
int numberfib = Convert.ToInt32(Console.ReadLine());
Fibonacci(numberfib);
Console.WriteLine(numberfib + "-ый элемент ряда Фибоначчи = " + Fibonacci(numberfib));
Console.ReadKey();
Console.WriteLine("\nЧтобы закончить выполнение домашнего задания, нажмите любую клавишу...");
Console.ReadKey();
Console.Clear();
}
}
}


MichGar 23 июл 2015 20:26
А как такие варианты:

/*
Напишите функцию, которая будет менять в массиве целых чисел все элементы,
которые равны указанному значению (аргумент) на противоположное значение по знаку.
Например, все элементы массива которые равны 5, будут меняться на -5.
*/

using System;

namespace ArrayExchange
{
class Program
{


static void Main()
{
Console.Write("Введите размерность массива: ");
int lengthInts = Convert.ToInt16(Console.ReadLine());
int[] arrayInts = new int[lengthInts];

Random r = new Random();

for (int i = 0; i < arrayInts.Length; i++)
{
arrayInts[i] = r.Next(1, 10);
Console.WriteLine(arrayInts[i]);
}

Console.WriteLine();
Console.Write("Введите число, которое необходимо заменить: ");
int numberExchenge = Convert.ToInt16(Console.ReadLine());

ReplaceInt(arrayInts, numberExchenge);
}

public static void ReplaceInt(int[] arrayInts, int exchange)
{
for (int i = 0; i < arrayInts.Length; i++)
{
if (arrayInts[i] == exchange)
arrayInts[i] = exchange*(-1);

Console.WriteLine(arrayInts[i]);
}
}
}
}

/*
Напишите функцию, которая будет находить минимальное число из трех.
*/

using System;

namespace MinNumber
{
class Program
{
static void Main()
{
Console.Write("Введите первое число: ");
double firstNumber = Convert.ToDouble(Console.ReadLine());

Console.Write("Введите второе число: ");
double secondNumber = Convert.ToDouble(Console.ReadLine());

Console.Write("Введите третье число: ");
double thirdNumber = Convert.ToDouble(Console.ReadLine());

MinValue(firstNumber, secondNumber, thirdNumber);
}

public static double MinValue(double firstNumber, double secondNumber, double thirdNumber)
{
double min;

if ((firstNumber < secondNumber) || (firstNumber < thirdNumber))
min = firstNumber;
else if ((secondNumber < firstNumber) || (firstNumber < thirdNumber))
min = secondNumber;
else
min = thirdNumber;
Console.WriteLine("Минимальное число: {0}.", min);

return min;
}
}
}

/*
Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.
Ряд Фибоначчи – это ряд, в котором каждый следующий элемент равен сумме двух предыдущих.
1 1 2 3 5 8 13 21… Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.
*/

using System;

namespace Fibonacci
{
class Program
{
static void Main(string[] args)
{
Console.Write("Введите порядковый номер элемента ряда Фибоначчи: ");
int numberFibonacci = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("\n{0} элемент ряда Фибоначчи: {1}.", numberFibonacci, Fibonacci(numberFibonacci));
}

public static int Fibonacci(int permissionNumber)
{
int[] Fibonacci = new int[permissionNumber];
Fibonacci[0] = 1;
Fibonacci[1] = 1;
for (int i = 2; i < permissionNumber; i++)
{
Fibonacci[i] = Fibonacci[i - 1] + Fibonacci[i - 2];
}
return Fibonacci[permissionNumber - 1];
}
}
}

Maxijuice 17 июл 2015 00:43
Flavius,
Вот "мои Фибоначчи" без рекурсии, может быть понятнее будет
(при учете того, что F(0) = 0; F(1) = 1;)

public static int Fibonacci(int pos)
{
int a = 0, b = 1, c;
for (int i = 1; i <= pos; i++)
{
c = a + b;
a = b;
b = c;
}
return a;
}

Максим 15 июл 2015 12:00
Flavius
---
Это рекурсия, функция вызывает сама себя. Работает до 39 потому что происходит очень много вызовов той самой функции, что требует много памяти, и получаем переполнение стека

Flavius 14 июл 2015 12:34
Mike, можете пояснить как работает ваша функция? Она работает, но начиная с 39 значения функция перестаёт выдавать значения.

FaNtik 21 июн 2015 03:21
Извиняюсь, нашёл ошибку.

FaNtik 21 июн 2015 02:56
Уважаемые, прошу помощи. не понимаю где накосячил. Выполнял первую задачу. Получил ошибку(исключение): "Не удалось привести тип объекта "System.ConsoleKeyInfo" к типу "System.IConvertible""
Код:

Console.WriteLine("Тестовая программа с фунцкиями");
Console.WriteLine("**********************************");
int b, s2, new_s2;
Console.WriteLine("Ряд чисел (массив) предоставлен снизу.");
int[] a = { 3, 5, 4, 7, 2, 6, 3, 8, 1, 1, 8, 9, 4, 6, 3, 5, 6, 1, 3, 4, 6, 7, 4, 0, 9, 0, 5, 6, 7, 2 };
for (int i2 = 0; i2 < a.Length; i2++)
{
b = a[i2];
Console.Write(b + " ");
}
Console.WriteLine();
Console.WriteLine("Введите число, все экземпляры которого вы хотите заменить в ряде чисел");
s2 = Convert.ToInt32(Console.ReadKey());
Console.WriteLine("Введите число, на которое вы хотите заменить все экземпляры числа, которое вы указали ранее");
new_s2 = Convert.ToInt32(Console.ReadKey());
for (int i = 0; i < a.Length; i++)
{
if (a[i] == s2)
a[i] = new_s2;
}
Console.WriteLine("Новый ряд чисел");
for (int i2 = 0; i2 < a.Length; i2++)
{
b = a[i2];
Console.Write(b + " ");
}
Console.WriteLine("Спасибо, что воспольовались моей программой!");
Console.ReadKey();

Mike 10 июн 2015 19:57
Функция для вычисления числа Фибоначчи (F(n) = F(n-1)+F(n-2)):


public int Fibonacci(int n)
{
if (n <= 2)
{
return 1;
}

return Fibonacci(n - 1) + Fibonacci(n - 2);
}

Максим 08 июн 2015 09:35
AlexKan
---
private

AlexKan 07 июн 2015 18:25
Здрасьте =) Скажите, а какой модификатор доступа по умолчанию, если его вообще не указывать?

NatsuMD 01 июн 2015 21:31
Без защит от дурака, но, кажется, всё работает =)

class Program
{
public static void FunctionBrain(int[] array) //Задача 1
{
int numb;
Console.Write("Введите число: ");
numb = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < array.Length; i++) //Перебираем полученный массив
{
if (array[i] == numb) //Ищем нужные элементы массива
array[i] = -numb; //Если нашли, то меняем знак
}
}

public static int Minimum(int a, int b, int c) //Задача 2
{
int min;
min = a;
if (min > b)
min = b;
if (min > c)
min = c;
return min; //Возвращаем минильное значение
}

public static int Fibonacci(int pNumber) //Задача 3
{
int[] arrayFibo = new int[35]; //Создаём ряд Фибоначчи
arrayFibo[0] = 1;
arrayFibo[1] = 1;
for (int i = 2; i < 35; i++)
{
arrayFibo[i] = arrayFibo[i - 1] + arrayFibo[i - 2];
}
for (int j = 0; j < 35; j++) //Выводим ряд Фибоначчи
{
Console.Write(arrayFibo[j] + " ");
}
Console.WriteLine();
return arrayFibo[pNumber - 1]; //Возвращаем необходимый элемент.
}


static void Main(string[] args)
{
int[] massive = { 1, 5, 8, 10, 5, 66, 55, 143, 5, 7, 9 };
FunctionBrain(massive); //Вызов функции
for (int i = 0; i < massive.Length; i++)
{
Console.Write(massive[i] + " ");
}
Console.WriteLine();
Console.ReadKey();

int a1, b1, c1;
Console.WriteLine("Введите три числа: ");
a1 = Convert.ToInt32(Console.ReadLine());
b1 = Convert.ToInt32(Console.ReadLine());
c1 = Convert.ToInt32(Console.ReadLine());
Console.Write("Минимальное число из трех: " + Minimum(a1, b1, c1)); //Вызов функции внутри Write
Console.WriteLine();
Console.ReadKey();

int poNumber;
int res;
Console.Write("Введите порядковый номер: "); //До 35
poNumber = Convert.ToInt32(Console.ReadLine());
res = Fibonacci(poNumber);
Console.WriteLine("Число Фибоначчи равно: " + res);
Console.ReadKey();
}
}

Flamingo 31 май 2015 12:22

public static int GetMax(int x, int y, int z)
{
int error = 0;
if (x > y && x > z)
return x;
else if (y > x && y > z)
return y;
else if (z > x && z > y)
return z;
else if (z == y || z == x)
return z;
else
return error;

}
static void Main(string[] args)
{
int x = Convert.ToInt32(Console.ReadLine());
int y = Convert.ToInt32(Console.ReadLine());
int z = Convert.ToInt32(Console.ReadLine());
int max = GetMax(x, y, z);
Console.WriteLine(max);
}

Максим 28 май 2015 16:03
rotkiv
---
Ну так return не обязателен, никакие связи не влияют на наличие return, нужен или нет зависит от задачи, которую выполняет функция.

rotkiv 28 май 2015 13:44
Максим,
ну это вы прям по пальцем разобрали функционал return-а, вот теперь-то суть понятна, благодарю.
вопрос. все-таки есть какая та связь между функцией и main-омб раз main без return-а выполнил функцию?

Максим 28 май 2015 13:03
rotkiv
---
Есть я с калькулятором (метод о котором речь) и друг (метод main или любой другой), друг звонит мне и говорит два числа, которые нужно умножить, я считаю, но результат ему не говорю, это метод без return, если говорю - c return. А Console.Write равноценно здесь тому, что я бы посчитал результат, и записал его на бумажке, которую друг не видит, и ему это ничего не дает

Максим 28 май 2015 12:45
rotkiv
---
Работать то работает, только конечная цель метода в 99% случаев заключается не в том, чтобы вывести результат в консоль. Забудьте о Console.Write, и тогда станет яснее, что дает return

rotkiv 28 май 2015 12:35
Warguss
ок, думаю уже разобрался. спасибо всем за знания !!

rotkiv 28 май 2015 12:30
vv-ch

спасибо за наглядный пример с комментариями, теперь понял.
вот ниже ваш-же пример который работает так-же да только без return. не могу понять в чем разница и когда НАДО использовать этот return

class Program
{
public static void MyFun(int a, int b)
{
Console.Write((a + b) / 2);
}
static void Main(string[] args)
{
int a = 8;
int b = 8;
MyFun(a, b);
Console.ReadKey();
}
}

Warguss 28 май 2015 12:29
rotkiv
методами с типом возвращаемого значения вызов метода можно поместить в любое место кода, где требуется значение соответствующего типа
Собственно для этого и нужны данные методы, также метод может возвратить объект и.т.д Следуй дальше по уроком, почитай литература, со временем все поймешь, не тормозись на одном месте!

Warguss 28 май 2015 12:17
rotkiv Дело не в методе Convert.ToInt32, а в методе Console.ReadKey() измени его на Console.ReadLine() и все заработает, данный метод считывает строку введенную в консоль(Считывает следующую строку символов из стандартного входного потока)
Метод Console.ReadKey() (Получает следующий нажатый пользователем символ или функциональную клавишу.)

rotkiv 28 май 2015 12:01
вот, довел до ума, проблема была в "ConvertToInt32" которую заменил на int.Parse и еще я убрал return
я знаю при каких условиях возвращается результат, что надо писать вместо void - int, double, long и т.д и т.п , мне остается не понятным зачем это надо? уж простите если торможу


class Program
{
public static void Min(int a, int b, int c)
{
int min;
if (a < b && a < c)
min = a;
else if (b < a && b < c)
min = b;
else
min = c;

Console.WriteLine(min);

}
static void Main(string[] args)
{
int a;
int b;
int c;
Console.WriteLine("insert first number: \n");
a = int.Parse(Console.ReadKey());
Console.WriteLine("insert second number: \n");
b = int.Parse(Console.ReadKey());
Console.WriteLine("insert third number: \n");
c = int.Parse(Console.ReadKey());
Min(a, b, c);
Console.ReadKey();
}
}

vv-ch 28 май 2015 10:40
rotkiv, у тебя на работало с return, т.к. ты используешь void. Возвращать может только функция с определенным типом, например: double, int, string, bool и т.д.
если фукнция что-то возвращает, то ее значение можно присвоить какой-то переменной того типа, что она возвращает.

Приведу пример. Функция, которая возвращает среднее арифметическое от двух переменных типа doule:

pablic static double YOUR_FUNCTION(double A, double B){
return (A+B)/2;
}

Результат этой функции можно присваивать переменной. Это делается, например, в мэйне:


static void Main(string[] args) {

//вот у тебя есть две переменные типа double, среднее арифметическое от которых ты хочешь найти:
double a, b;
//ты их вводишь (ну или просто что-то присваиваешь, не важно):
double a = Convert.ToDouble(Console.ReadLine());
double b = Convert.ToDouble(Console.ReadLine());
//а теперь ты в какую-то переменную типа дабл хочешь записать это среднее арифметическое
double d = YOUR_FUNCTION(a, b);
//просто переменной дабл присвоилось то, что возвратила функция.
//ПРОФИТ
}


Warguss 28 май 2015 10:32
rotkiv вторая задача, с методом возвращающим значение, вроде тут все наглядно и понятно
P.S Дмитрий


class Program
{
// Создаем метод принимающий в качестве параметров массив и возвращавший строку
static string myMethod(int[]array)
{
int a, b, c;
string str = null;

a = array[0];
b = array[1];
c = array[2];


// Проверяем условие
if((a < b) && (a < c))
{
str = "первое введенное число минимальное";
return str;
}

else if((b < a) && (b < c))
{
str = "второе введенное число минимальное";
return str;
}

else

return str = "третье введенное число минимальное";

}
static void Main(string[] args)
{
int[] myArray = new int[3];

Console.WriteLine("Введите три разных числа!!");

// Записываем введенные данные в массив
Console.Write("Введите первое число: ");
myArray[0] = int.Parse(Console.ReadLine());

Console.Write("Введите второе число: ");
myArray[1] = int.Parse(Console.ReadLine());

Console.Write("Введите третье число: ");
myArray[2] = int.Parse(Console.ReadLine());

Console.WriteLine(myMethod(myArray));

Console.ReadKey();
}
}

rotkiv 28 май 2015 10:13
ну а если сразу задать значение переменный то все срабатывает и кстати я убрал return и все равно работает, кто-нибудь объяснит пожалуйста для чего необходима возвращать результат?

class Program
{
public static void Min(int a, int b, int c)
{
int min;
if (a < b && a < c)
min = a;
else if (b < a && b < c)
min = b;
else
min = c;
Console.Clear();
Console.WriteLine(min);
//return min;
}
static void Main(string[] args)
{
int a = 4;
int b = 8;
int c = 3;
/*Console.WriteLine("insert first number: \n");
a = Convert.ToInt32(Console.ReadKey());
Console.WriteLine("insert second number: \n");
b = Convert.ToInt32(Console.ReadKey());
Console.WriteLine("insert third number: \n");
c = Convert.ToInt32(Console.ReadKey());*/
Min(a, b, c);
Console.ReadKey();
}
}

Юлия 28 май 2015 01:53
{
class Program
{
public static int fib(int number)
{
int[] massfib = new int[number];
massfib[0] = 1; massfib[1]=1;
for (int i = 2; i < massfib.Length; i++)
{ massfib[i] = massfib[i - 2] + massfib[i - 1]; }

return massfib[massfib.Length-1];
}
static void Main(string[] args)
{
int res = fib(10);
Console.WriteLine(res);
Console.ReadKey();

}
}
}

rotkiv 27 май 2015 22:50
Дмитрий, вы волшебник, как не крутил этот код, ну не как не выходил результат. если есть возможность, объясните про "ВОЗВРАТНОЕ ЧИСЛО", так и не понял для чего оно нужно. благодарен заранее.

vv-ch 27 май 2015 21:43
т.е. выводит числа фибоначчи от 1 до этого индекса

vv-ch 27 май 2015 21:42

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

// программа, которая получает три числа на вход и выводит число фибоначчи с наибольшим из входных данных индексом
// вроде как совмещение 2 и 3 задачи

namespace c_sharp_sol
{
class Program
{
public static int Maximum(int a, int b, int c) {
return Math.Max(Math.Max(a, b), c);
}
public static int Fibonacci(int lst2, int lst1, int nom, int need) {
if (nom == need) return lst1;
return Fibonacci(lst1, lst1 + lst2, nom+1, need);
}
static void Main(string[] args)
{
int a, b, c;
a = Convert.ToInt32(Console.ReadLine());
b = Convert.ToInt32(Console.ReadLine());
c = Convert.ToInt32(Console.ReadLine());
int n = Maximum(a, b, c);
for (int i = 1; i <= n; i++) {
Console.Write(Fibonacci(0, 1, 1, i)+ " ");
}

}
}
}


Дмитрий 27 май 2015 13:52
rotkiv


public static void ChVal(int[] mass, int old, int neW)
{
for (int i = 0; i < mass.Length; i++)
{
if (mass[i] == old)
mass[i] = neW;

Console.WriteLine(mass[i]);
}
}

private static void Main(string[] args)
{
int[] mass = { 35, 35, 658, 32, 5, 3, 7, 5, 6, 9, 5, 1, 4, 5 };

ChVal(mass, 5, -5);

Console.ReadKey();
}

Дмитрий 27 май 2015 13:50
rotkiv: Метод WriteLine не принимает таких параметров
Запиши его отдельно
ChVal(mass, 5, -5);

rotkiv 27 май 2015 13:31
I задача:
подскажите если все правильно, ибо всплывают две ошибки:
1. The best overloaded method match for 'System.Console.WriteLine(bool)' has some invalid arguments
2. Argument 1: cannot convert from 'void' to 'bool'

class Program
{
public static void ChVal(int[] mass, int old, int neW)
{
for (int i = 0; i < mass.Length; i++)
{
if (mass[i] == old)
mass[i] = neW;
}
}
static void Main(string[] args)
{
int[] mass = {35, 35, 658, 32, 5, 3, 7, 5, 6, 9, 5, 1, 4, 5};
Console.WriteLine(ChVal(mass, 5, -5));
Console.ReadKey();
}
}



II задача:
здесь тоже не без проблем, вот ссылка на скиншот
http://s017.radikal.ru/i412/1505/6f/a96055efe9de.jpg

class Program
{
public static int Min(int a, int b, int c)
{
int min;
if (a < b && a < c)
min = a;
else if (b < a && b < c)
min = b;
else
min = c;
return min;
}
static void Main(string[] args)
{
int a=0, b=0, c=0;
Console.WriteLine("insert first number: \n");
a = Convert.ToInt32(Console.ReadKey());
Console.WriteLine("insert second number: \n");
b = Convert.ToInt32(Console.ReadKey());
Console.WriteLine("insert third number: \n");
c = Convert.ToInt32(Console.ReadKey());
Console.WriteLine(Min(a, b, c));
Console.ReadKey();
}
}

Дмитрий 27 май 2015 13:07
Третья задача

public static void Main()
{


Console.Write("Введите конец диапазона : ");

int end = int.Parse(Console.ReadLine());

Fib(end);

Console.ReadKey();

}

static void Fib(int number)
{
int a = 1;

for (int i = 1; i <= number; i += a)
{
Console.WriteLine("{0} ", i);
a = i - a;
}

}

Дмитрий 27 май 2015 12:28
static void myMethod(int[]array)
{
int a, b, c;

a = array[0];
b = array[1];
c = array[2];

if((a < b) && (a < c))
{
Console.WriteLine("первое введенное число минимальное");
}

else if((b < a) && (b < c))
{
Console.WriteLine("второе введенное число минимальное");
}

else if ((c < a) && (c < b))
{
Console.WriteLine("третье введенное число минимальное");
}

}
static void Main(string[] args)
{
int[] myArray = new int[3];

Console.Write("Введите первое: ");
myArray[0] = int.Parse(Console.ReadLine());

Console.Write("Введите второе: ");
myArray[1] = int.Parse(Console.ReadLine());

Console.Write("Введите третье: ");
myArray[2] = int.Parse(Console.ReadLine());

myMethod(myArray);

Console.ReadKey();
}

Дмитрий 27 май 2015 12:19
Вторая задача

static void myMethod(int[]array)
{
int a, b, c;

a = array[0];
b = array[1];
c = array[2];

if((a > b) && (a > c))
{
Console.WriteLine("первое введенное число максимальное");
}

else if((b > a) && (b > c))
{
Console.WriteLine("второе введенное число максимальное");
}

else if ((c > a) && (c > b))
{
Console.WriteLine("третье введенное число максимальное");
}

}
static void Main(string[] args)
{
int[] myArray = new int[3];

Console.Write("Введите первое: ");
myArray[0] = int.Parse(Console.ReadLine());

Console.Write("Введите второе: ");
myArray[1] = int.Parse(Console.ReadLine());

Console.Write("Введите третье: ");
myArray[2] = int.Parse(Console.ReadLine());

myMethod(myArray);
}

Дмитрий 27 май 2015 11:43
Первый пример

static void ChangeTheSign(int[]array)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == 5)
{
array[i] = -5;
}
Console.Write( array[i]);

}
}

static void Main(string[] args)
{
int[] myArray = { 2, 3, 6, 5, 11, 9, 5, 11, 43, 5, 34, 5 };

for (int i = 0; i < myArray.Length; i++)
{
Console.Write(myArray[i]);
}

Console.WriteLine();

ChangeTheSign(myArray);

Console.ReadKey();
}

Максим 25 май 2015 11:56
Steyrix
---
Метод ничего не возвращает, если k < 1, это нужно исправить

Steyrix 25 май 2015 10:35
Здравствуйте. Данный код не работает, не знаю почему. Пишет что не все ветви кода возвращают значение. Прошу помочь:

class Program
{
static int fibo(int k)
{
if (k == 1)
return 0;
if (k == 2)
return 1;
if (k > 2)
return (fibo(k - 2)+ fibo(k - 1));

}
static void Main(string[] args)
{
int a;
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(fibo(a));
Console.ReadKey();

}

Максим 24 май 2015 23:55
Александр
---
Потому что при s=2 тело цикла ни разу не обрабатывается, и "a" остается без изменений

Александр 23 май 2015 13:24
спасибо за ответ!
помогите, почему на второй позиции он 0 выдает, когда должно быть 2 ??
public static int fib(int s)
{
int[] mas = new int [s];
int a = 0;
mas[0] = 1;
mas[1] = 1;
for (int i = 2; i < s; i++)
{

mas[i] = mas[i - 1] + mas[i - 2];
a = mas[i];
}
return a;
}
static void Main(string[] args)
{

int b;
Console.WriteLine("введите номер элемента");
b = Convert.ToInt32(Console.ReadLine());

Console.WriteLine(fib(b));
Console.ReadKey();
}

Максим 21 май 2015 20:31
Александр
---
В последнем примере в уроке есть строка с вызовом метода:

max = GetMax(numbers);

Здесь функция GetMax возвращает значение при помощи оператора return - в max записывается число (результат работы функции). Без return функция бы наша максимальное число, но мы его не получили бы в главной функции main

Александр 21 май 2015 19:33
Максим, я немного не понял оператор return: его значение, куда он возвращает результат.
можно пояснить на примере что будет с и без этого оператора?

Flamingo 18 май 2015 15:21

public static void GetMax(int a, int b, int c)
{
if (a < b && a < c)
Console.WriteLine("Число " + a + " самое маленькое.");
if (b < a && b < c)
Console.WriteLine("Число " + b + " самое маленькое.");
if (c < b && c < a)
Console.WriteLine("Число " + c + " самое маленькое.");
Console.ReadKey();
}
static void Main(string[] args)
{
Console.WriteLine("Введите первое число");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второе число");
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите третье число");
int c = Convert.ToInt32(Console.ReadLine());
GetMax(a, b, c);
}

Flamingo 18 май 2015 14:52

public static void ReplaceSign(int[] numbers)
{
for(int h = 0; h < numbers.Length; h++)
{
if(numbers[h] % 2 == 0 )
{
numbers[h] = numbers[h] - numbers[h] * 2;
}
Console.WriteLine(numbers[h]);
}
}
static void Main(string[] args)
{
int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };
ReplaceSign(numbers);
Console.ReadKey();
}

Богдан 11 май 2015 22:42
class Program
{
public static void negativeNumbers (int [] Arr1)
{
for (int i = 1; i < Arr1.Length; i++)
{
Arr1[i] *= (-1);
Console.Write(Arr1[i] + " ");
}

}
static void Main(string[] args)
{
Random rand = new Random();
int[] Arr1 = new int[10];
Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("Сгенерированный массив:");
Console.ResetColor();
for (int i = 1; i < 10; i++)
{
Arr1[i] = rand.Next(0, 40);
Console.Write(Arr1[i] + " ");
}
Console.WriteLine("");
Console.Write("======================================");
Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("");
Console.WriteLine("Обработанный массив:");
Console.ResetColor();
negativeNumbers(Arr1);
Console.ReadKey();
}
}

Kirill 06 май 2015 13:36
internal class Test
{
public static int GetMin(int[] numbers)
{
int min = numbers[0];
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] < min)
min = numbers[i];
}
return min;
}

private static void Main(string[] args)
{
int[] numbers = new int[3];
int min;
Console.WriteLine("Введиет число");
numbers[0] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Еще одно");
numbers[1] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("И еще раз");
numbers[2] = Convert.ToInt32(Console.ReadLine());
min = GetMin(numbers);
Console.WriteLine(GetMin(numbers) + "Минимальное число");
Console.ReadKey();
}
}
}

Ivan 05 май 2015 10:27
class Program
{
public static int GetMin(int[] numbers)
{
int min = numbers.Length;
for (int i = 0; i < numbers.Length; i++)
{
if(numbers[i] < min)
min = numbers[i];
}
return min;
}
static void Main(string[] args)
{
int[] numbers = new int[3];
int min;
Console.WriteLine("Введиет число");
numbers[0] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Еще одно");
numbers[1] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("И еще раз");
numbers[2] = Convert.ToInt32(Console.ReadLine());
min = GetMin(numbers);
Console.WriteLine(GetMin(numbers) + "Минимальное число");
Console.ReadKey();
}
}

Александр_Бугай 04 май 2015 21:37
Задание 1.
public static void Minus(int[]mas, int x, int y)
{
if (x == y)
{
y = y * -1;
Console.WriteLine("Here is it" + y);
}

}

public static void Main(string[] args)
{
Console.WriteLine("Enter number of massive");
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter number for change");
int x = Convert.ToInt32(Console.ReadLine());
int y;
int[] mas = new int[b];
for (int i = 0; i < b; i++)
{
Console.WriteLine("Enter number of massive" + i);
mas[i] = Convert.ToInt32(Console.ReadLine());
y = mas[i];
Minus(mas, x, y);
}
Console.ReadKey();

Александр_Бугай 04 май 2015 20:56
Задание 3.
public static void Back(int[]array)
{
Console.WriteLine("Enter number of choose");
int b = Convert.ToInt32(Console.ReadLine());
array[0] = 1;
Console.WriteLine(array[0]);
array[1] = 1;
array[2] = 2;
if (b < 2)
{
Console.WriteLine("It is your number" + array[1]);
}
if (b == 2)
{
Console.WriteLine("It is your number" + array[2]);
}
Console.WriteLine(array[1]);
for (int i = 2; i < array.Length; i++)
{
array[i] = array[i - 1] + array[i - 2];
Console.WriteLine(array[i]);
if (b -1 == i)
{
Console.WriteLine("It is your number" + array[i]);
}
}
}

public static void Main(string[] args)
{
Console.WriteLine("Enter number of Fib");
int a = Convert.ToInt32(Console.ReadLine());
int[] array = new int[a];
Back(array);
Console.ReadKey();
}

Александр_Бугай 04 май 2015 17:10
Задание 2
public static int Min(int[]array)
{
int min = array[0];
for(int i=0; i<3; i++)
{
if (array[i] < min)
{
min = array[i];
}
}
return min;
}
public static void Main(string[] args)
{

int []array = new int[3];
for (int i=0; i<3; i++)
{
int s = Convert.ToInt32(Console.ReadLine());
array[i] = s;
}
int min = Min(array);
Console.WriteLine(min);
Console.ReadKey();

Максим 02 май 2015 13:48
По ошибке удалил последний комментарий, добавьте еще раз)

Andre 26 апр 2015 16:33
2 TASK :

public static void MaxNum(int first, int second, int third)
{
if (first > second )
{
if (first > third)
Console.WriteLine("First is the biggest -{0}", first);
else
Console.WriteLine("Third is the biggest -{0}", third);
}
else
if (second > third)
Console.WriteLine("Second is the biggest -{0}", second);
else
Console.WriteLine("Third is the biggest -{0}", third);
}


public static void Main(string[] args)
{
int first, second, third;
Console.WriteLine("Input first number");
first = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Input second number");
second = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Input third number");
third = Convert.ToInt32(Console.ReadLine());
MaxNum(first, second, third);
Console.ReadKey();
}

Андре 26 апр 2015 16:21
1 Task :



namespace ConsoleApplication1
{
class Gamno
{


public static void ChangeSign(int[] arr)
{
int var = 0;
for (int i = 0; i < arr.Length; i++)
{
var = var - arr[i];
arr[i] = var;
var = 0;
}

foreach (int el in arr)
{
Console.Write(" {0}", el);
}
}
public static void Main(string[] args)
{
int[] arr = { 1, 2, 3, 4, 3, 1, 2, 4, 5, 645, 6, 7, 2, 34, 123 };
foreach (int el in arr)
Console.Write(" {0}",el);
Console.WriteLine();
ChangeSign(arr);
Console.ReadKey();
}
}

}


Cyberdemon 23 апр 2015 15:02
public static int RMass(int pos)
{
List<int> fibo = new List<int>() {1, 1};
for (int i = 2; i < pos; i++)
{
fibo.Add(fibo[i - 1] + fibo[i - 2]);
};

return fibo[pos - 1];

}

static void Main(string[] args)
{
Console.WriteLine("Element №:");
Console.WriteLine(RMass(Convert.ToInt16(Console.ReadLine())));
Console.ReadKey();
}

Максим 16 апр 2015 15:03
Максим
---
Здесь вы пытаетесь передать в функцию переменную в которую только после этого записываете результат, это немного парадоксально. В метод GetFibonacci передавайте либо сразу конкретное число, либо переменную, которой уже назначено значение:

static void Main(string[] args)
{
int a = 4;
int numF = GetFibonacci(a); // numf = 3
Console.WriteLine(GetFibonacci(4)); // 3
Console.ReadKey();
}

Максим 16 апр 2015 12:05
Как уже говорил ранее, задачу не смог решить (взял ваш код и ранних коментариев), но более менее понял, как по формуле подобрать код. Основная проблема в том, что я не понимаю, как использовать вывод своей функции "GetFibonacci" в главную функцию Main. в 1й и 2й задаче наугад пробовал всё подряд пока не получилось, но правила размещения не уловил.

public static int GetFibonacci(int numF)
{

int fibNum = 0;
if (numF == 1 || numF == 2)
fibNum = 1;
int prev = 1, prevprev = 1;
for (int i = 2; i < numF; i++)
{
fibNum = prev + prevprev;
prev = fibNum;
}

return fibNum;
}


static void Main(string[] args)
{
int numF = GetFibonacci(numF);
Console.WriteLine(GetFibonacci(numF));
Console.ReadKey();

Максим 16 апр 2015 11:01
Максим
---
Что-то я не совсем понял, что вы имеет в виду под "прикрутить свою функцию к главной". Может ваша функция ничего не возвращает, а вы пытаетесь передать ее в WriteLine? Лучше скиньте сюда код, и тогда будет ясно, в чем дело.

Максим 16 апр 2015 05:12
В уроке нет пояснения как именно прикручивать свою функцию к главной. Не понял как это делать. В 1м и во 2м каким-то непонятным для себя образом сделал(решил), а в 3й не смог, Как в прочем и саму 3ю задачу не осилил саму по себе. После бессонной ночи полез смотреть ответы, попробовал вставлять чужие коды и не смог прикрутить вывод результата в консоль =\. Можете в урок добавить пояснения как правильно прикрутить свою функцию к главной на примере вывода в консоль?

phoenix 15 апр 2015 14:40
Вроде, работает:
// 1-st function
public static void ReverseIntInMass (int[] NameMass, int a)
{
for (int i=0; i < NameMass.Length; i++)
{if (NameMass[i] == a)
{NameMass[i] = -a;}}
}
// 2-nd function
public static double GetMaxOfThree (double[] MassDouble)
{
double max;
max = MassDouble[0];
for (int i = 1; i < MassDouble.Length; i++)
{ if (MassDouble[i] > max) { max = MassDouble[i]; } }
return max;
}
// 3-rd function
public static int GetFibonachi(int NumberFibonachiElement)
{
int[] FibonachiRow = new int[NumberFibonachiElement];
int FindingElement =1;
if (NumberFibonachiElement > 2)
{
FibonachiRow[0] = 1; FibonachiRow[1] = 1;
for (int i = 2; i < NumberFibonachiElement; i++)
{
FibonachiRow[i] = FibonachiRow[i - 1] + FibonachiRow[i - 2];
FindingElement = FibonachiRow[i];
}
}
return FindingElement;

}



// Main Program
static void Main(string[] args)
{
int[] MainMass1 = new int[20];
Random Rnd1 = new Random();
int Key, Num_El_Fib;
double[] MainMassFloat = new double[3];
Console.WriteLine("Домашнее задание №1 (Конвертирование элемента масива)\nдля продолжения нажмите любую кнопку...");
Console.ReadKey();
Console.WriteLine("Задан масив чисел: ");
for (int i = 0; i < MainMass1.Length; i++)
{ MainMass1[i] = Rnd1.Next(1,10);
Console.Write(MainMass1[i] + ", ");}
Console.WriteLine();
Console.WriteLine("Какой элемент масива заменить на противоположный? ");
Key = Convert.ToInt32(Console.ReadLine());
ReverseIntInMass(MainMass1,Key);
Console.WriteLine("Преобразованный масив: ");
for (int i = 0; i < MainMass1.Length; i++)
{Console.Write(MainMass1[i] + ", ");}
Console.ReadKey();
Console.Clear();
Console.WriteLine("Домашнее задание №2 (Получение наибольшего из 3-х чисел)");
for (int i = 0; i < MainMassFloat.Length; i++)
{ Console.Write("Введите " + (i+1) + "-е число: ");
MainMassFloat[i] = Convert.ToDouble(Console.ReadLine());
}
Console.WriteLine("Наибольшее из введенных чисел - " + Convert.ToString(GetMaxOfThree(MainMassFloat)));
Console.ReadKey();
Console.Clear();
Console.WriteLine("Домашнее задание №3 (Поиск N-ого элемента ряда Фибоначи)");
Console.Write("Какой элемент ряда Фибоначи показать? ");
Num_El_Fib = Convert.ToInt32(Console.ReadLine());

Console.Write(Num_El_Fib + "-й элемент ряда Фибоначи = " + Convert.ToString(GetFibonachi(Num_El_Fib)));
Console.ReadKey();
}

gvgvg 05 апр 2015 03:57
Уроки понятные но многие моменты не раскрываешь автор. А в заданиях даешь людям головоломки больше на логику чем на программирование. В начале новичку нужно учить основы а не думать как построить массив из фебоначчи. Имхо

Максим 29 мар 2015 13:15
LL
---
Нет, здесь не в возвращении разница. Это в паскале есть процедуры, которые не возвращают значения

LL 28 мар 2015 21:08
"Функции в Си-шарп также называют методами. Между этими двумя понятиями разница небольшая, и тут мы будем использовать термин функция." - разница немного глобальнее...функция возвращает, а метод - нет. Так легче усвоить разницу новичкам, как я, мне кажется.

Dronik 26 мар 2015 21:58
Я понял

Dronik 26 мар 2015 21:57

public static void ReplaceNumbers (int [] numbers, int number, int newNumber)
{
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == numbers)
numbers[i] = newNumber;
}

Почему появляется ошибка - Оператор "==" не может применяться к операндам типа "int" и "int[]"

Максим 14 мар 2015 20:38
Mark
---
Здесь ошибка:
Console.WriteLine("Ваше число:{1}", fibonachi[Index]);

Нумерация аргументов форматированного вывода начинается с 0, а не с 1:
Console.WriteLine("Ваше число:{0}", fibonachi[Index]);

Mark 14 мар 2015 20:32
В ЧЕМ ОШИБКА????!!!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication9
{
class Program
{
public static void Fibonachi(int[] fibonachi)
{
fibonachi[0] = 1;
fibonachi[1] = 1;
fibonachi[2] = 2;
fibonachi[3] = 3
for (int i = 4; i < fibonachi.Length; i++)
{
fibonachi[i] = fibonachi[i - 1] + fibonachi[i - 2];
}
}
static void Main(string[] args)
{
int[] fibonachi = new int[100];
int Index;
Fibonachi(fibonachi);
Console.WriteLine("Введите порядковый номер числа фибоначи(до 100)");
Index = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Ваше число:{1}", fibonachi[Index]);
Console.ReadKey();

}
}
}

Максим 05 мар 2015 10:55
yamayka
---
В первом задании должна быть функция, и она должна менять текущий масссив, а не в новый записывать

yamayka 04 мар 2015 21:01
Не совсем уверен в решении.


1/ class Program
{
public static void Main(string[] args)
{
int[] a = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

int[] c = new int[10];
for (int i = 0; i < 10; i++)
{
c[i] = -a[i];
Console.WriteLine(c[i]);
}
Console.ReadKey();
}
}
}


2/ class Program
{
public static int GetMin(int[] array)
{
int min = array[0];
for (int i = 1; i < array.Length; i++)
{
if (array[i] < min)
min = array[i];
}
return min;
}
static void Main(string[] args)
{
int[] numbers = { 6,10,12 };
int min;
min = GetMin(numbers);
Console.WriteLine(GetMin(numbers));
Console.ReadKey();
}
}
}


Naifu 23 фев 2015 20:34
Третья задача:

static int Fib(int index)
{
return index < 2 ? (int) index : Fib(index - 1) + Fib(index - 2);
}

static void Main(string[] args)
{

Console.Write("Введите индекс нужного числа Фибоначчи: ");
Console.WriteLine(("Число Фибоначчи для данного индекса = ")+Fib(Convert.ToInt32(Console.ReadLine())));
Console.ReadKey();
}

Максим 20 фев 2015 09:40
Васильович
----
Метод Max необходимо объявить статическим. Ну и сам алгоритм неправильно считает максимальное, нужно изменить так:

public static double Max(double a, double b, double c)
{
double max;
max = a;
if (b > max)
max = b;
if (c > max)
max = c;
return max;
}

Giffy 19 фев 2015 23:28
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace прога_на_функции
{
class Program
{
public static void ChangeFunction (int[] numbers, int constanta)
{
for (int i=0;i<numbers.Length;i++)
{
if (numbers[i]==constanta)
{
numbers[i] = numbers[i] * (-1);
}
Console.Write(" "+numbers[i]+" ");
}
}
static void Main(string[] args)
{
int[] numbers = {1,2,3,4,3,2,1,2,3,4,3,2,1,2,3,4,3,2,1,2,3,4};
int constanta;
Console.WriteLine("Input number for equialenting ");
constanta = Convert.ToInt32(Console.ReadLine());
ChangeFunction(numbers, constanta);
Console.ReadKey();

}
}
}

Васильович 11 фев 2015 17:33
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication8
{
class Program
{
public double Max(double a, double b, double c)
{
double max;
max = a;
if (b > max)
max = b;
else
max = c;
return max;
}
static void Main(string[] args)
{
double a, b, c, max;
Console.Write("a=");
a = double.Parse(Console.ReadLine());
Console.Write("b=");
b = double.Parse(Console.ReadLine());
Console.Write("c=");
c = double.Parse(Console.ReadLine());
max=Max(a,b,c);
Console.ReadKey();
}
}
}
Почему не работает?)

Anatoliy 02 фев 2015 21:31
омг, всё намного проще.Удалите код снизу))))

class Program
{


public static void PZ(int[] numbers, int z)
{

for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == z)
{
numbers[i] = numbers[i] * (-1);
}
Console.Write(numbers[i]);
}
}
static void Main(string[] args)
{
int z = 5;
int[] numbers = new int[10]{1,2,3,4,5,6,7,8,9,10};
PZ(numbers, z);
Console.ReadKey();
}
}


Дмитрий 01 фев 2015 23:49
Спасибо, все просто!!!
Не доглядел.

Максим 01 фев 2015 13:16
Дмитрий
---
Возвращаемый тип должен быть массив - int[]:

public static int[] Namber_Fib(int namber, int namberKol)
{
int[] Fib_Array = new int[namberKol];
Fib_Array[0] = namber;
Fib_Array[1] = namber;

for (int f = 2; f < namberKol; f++)
{
Fib_Array[f] = Fib_Array[f - 1] + Fib_Array[f - 2];
}
return Fib_Array;

}

Дмитрий 01 фев 2015 00:44
Здравствуйте можно передать массив из функции?

public static int Namber_Fib(int namber, int namberKol)
{
int[] Fib_Array = new int[namberKol];
Fib_Array[0] = namber;
Fib_Array[1] = namber;

for (int f = 2; f < namberKol; f++)
{
Fib_Array[f] = Fib_Array[f - 1] + Fib_Array[f - 2];
}
return Fib_Array[];// Ошибка

}

Максим 30 янв 2015 16:42
Maryan
---
Нет, такое не пойдет. Нужно чтобы программа сама считала ряд, а не так, что вы задали его сами в массиве

Максим 30 янв 2015 16:38
Vedmid Valery
---
Нормальное решение, работает

Vedmid Valery 30 янв 2015 12:21
Добрый день. Чекните плз кто в теме задачу 3. Буду очень признателен если скажете чего где не так наговнокодил:

class Program
{ /*
Задача 3. Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.
* Ряд Фибоначчи – это ряд, в котором каждый следующий элемент равен сумме двух предыдущих.
* 1 1 2 3 5 8 13 21…
* Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.
*/
static int fibonachi(int n)
{
List<int> list = new List<int>();
int b, i = 1;
while (i <= n)
{
if (i == 1 || i == 2)
list.Add(1);
else
{
list.Add(list[i - 2] + list[i - 3]);
}
i++;
}
b = n-1;
return list[b];
}
static void Main(string[] args)
{
int n;
Console.WriteLine("Введите порядковый номер ряда Фибоначчи:");
n = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Число соответствующее порядковому номеру " + n + " - " + fibonachi(n));
Console.ReadKey();
}
}


Заранее спасибо.

Maryan 28 янв 2015 22:39
Ничего себе задачка :(), но получилось

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
class Program
{
public static int Fabonachi(int n)
{
int sum = 0;
int[] finabochi = new int[15] { 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610 }; //Ряд Финабоччи до 15
for (int i = 0; i <= n-1; i++) //Проход по массиву до элемента введенного пользователем
sum = finabochi[i]; //Показывает номер введенный пользователем
return sum;
}
static void Main(string[] args)
{
int number;
Console.WriteLine("Введите номер последовательности ряда Фабиначчи до 15-ти");
number = Convert.ToInt32(Console.ReadLine()); //Ввод номера
if (number <= 15)
Console.WriteLine(Fabonachi(number));
else
Console.WriteLine("Ошибка, номер слишком большой");

Console.ReadKey();
}
}
}


Rafnsvartr 23 янв 2015 19:32
И 3я задача спустя ночь =)


public static int FibReturn(List<int> fib)
{
int x = 0, y = 1;
int fib_a = fib[0];
Console.Write("Введите номер позиции в ряду Фиббоначи: ");
int a = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < a; i++)
{
fib.Add(fib[x] + fib[y]);
x++;
y++;

}
fib_a = fib[a - 1];
return fib_a;
}

static void Main(string[] args)
{
int fibq;
List<int> fib = new List<int>() { 0, 1 }; // создание списка
int fib_a;
fib_a = FibReturn(fib);
Console.WriteLine(fib[0]);

foreach (int item in fib)
Console.Write(item + " ");

Console.Read();

Rafnsvartr 23 янв 2015 02:53
1ая задача.

{ /*
*
* Напишите функцию, которая будет менять в массиве целых чисел все элементы,
* которые равны указанному значению (аргумент) на противоположное значение по знаку.
* Например, все элементы массива которые равны 5, будут меняться на -5.
*
*/
class Program
{
public static void SignChanger(double[] numbers, double number){
for (int i = 0; i < numbers.Length; i++) {
if (numbers[i] == number){
numbers[i] = numbers[i] * (-1);


}
Console.Write(numbers[i]);

}

}

static void Main(string[] args)
{
double[] numbers = {1,2,3,4,5,6,7,8,9,5,6,8,3,4,5,63,2};
foreach (int item in numbers){
Console.WriteLine(item + " ");

}
double name = 5;
SignChanger(numbers, name);
Console.Read();
}

}
}


++++++++++++++++++++++++++++++++++
2ая задача:


{
class Program
{
public static int GetMin(int[] array) {
int min = array[0];
for (int i = 0; i < array.Length;i++) {
if (array[i] < min)
min = array[i];
}
return min;
}

static void Main(string[] args)
{
int[] numbers = { 864, 2165, 354 };
int min;
min = GetMin(numbers);
foreach (int item in numbers){
Console.WriteLine(item+ " ");

}
Console.WriteLine("+++");
Console.WriteLine(GetMin(numbers));
Console.Read();
}
}
}




Slavik 09 янв 2015 13:38
Задача 1
class Program
{
public static void ReplaceName(double[] names, double name)
{
for (int i = 0; i < names.Length; i++)
{
if (names[i] == name)
names[i] = names[i] - 2 * names[i];
Console.WriteLine(names[i]);
}
}
static void Main(string[] args)
{
double[] names = { 4, 6, 2, 4, 6, 2, 1, 4, 6, 7, 1, 3, 5 };
int man;
Console.WriteLine("Введите число: ");
man = Convert.ToInt32(Console.ReadLine());
ReplaceName(names, man); // вызов функции. Все строки "Andrey" в массиве будут заменены на "Nikolay"
Console.ReadKey();
}

}

Сергей 05 янв 2015 15:55
Не совсем понял как применять функции, 3 задача решается без нее:
int[] finabochi = new int [20];
int a = 0, b, c = 1;
for (int i = 1; i < finabochi.Length; i++)
{
finabochi[i] = c;
b = c;
c = a + b;
a = b;
Console.WriteLine(finabochi[i]);
}
Console.ReadKey();

Максим 29 дек 2014 13:16
Виталий
---
Ну так доставьте "}" где не хватает

Виталий 27 дек 2014 17:33
Пишет "не хватает }":(

ДмитрийМ 26 дек 2014 23:11
1ое задание


using System;

namespace Массив5
{
class Program
{
public static void Zamena(int[] a, int b)
{
for (int i = 0; i < a.Length; i++)
{
if (a[i] == b)
a[i] = (-1) * b;
}
}
static void Main(string[] args)
{
int[] a = new int[100];
Console.WriteLine("Введите число от 1 до 10: ");
int b = Convert.ToInt32(Console.ReadLine());
Random rand = new Random();
for (int i = 0; i < a.Length; i++)
{
a[i] = rand.Next(1, 10);
Console.Write(a[i] + " ");
}

Console.WriteLine("Получаем: ");
Zamena(a , b);
for (int i = 0; i < a.Length; i++)
Console.Write(a[i] + " ");
Console.ReadKey();
}
}
}

Максим 20 дек 2014 19:39
AlexWolf
---
Так имя в аргументах метода может быть любым, поменяйте tabl на другое имя и всё будет работать

ДмитрийМ 19 дек 2014 16:04
using System;

namespace ТруКетч1
{
class Program
{
static void Main(string[] args)
{
int[] a = new int[10];
Random rand = new Random();
for (int i = 0; i < a.Length; i++)
{
a[i] = rand.Next(1, 10);
Console.Write(a[i] + " ");
}
Console.WriteLine("Введите 2 порядковых элемента которые хотите суммировать: ");
try
{
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
int r = Index1(a, b);
int t = Index2(a, c);
int f = r + t;
Console.WriteLine(f);
}
catch (System.IndexOutOfRangeException)
{
Console.WriteLine("За границами массива");
}
catch(System.FormatException)
{
Console.WriteLine("Не тот формат символов");
}


}
public static int Index1(int[] a, int b)
{
int r = a[b-1];
return r;
}
public static int Index2(int[] a, int c)
{
int t = a[c-1];
return t;
}
}
}

Дмитрий 19 дек 2014 15:22
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class Programm
{

public static void Fibon(int[] a)
{
a[0] = 0;
a[1] = 1;
for (int i = 2; i < a.Length; i++)
{
a[i] = a[i - 1] + a[i - 2];
}
}
public static int Index(int[] a, int b)
{
int z = a[b];
return z;
}

static void Main()
{
int[] a = new int[100];


Fibon(a);

Console.WriteLine("Введите индекс числа которое хотите увидеть: ");
int b = Convert.ToInt32(Console.ReadLine());

int z = Index(a, b);
Console.WriteLine(z);

}
}

AlexWolf 18 дек 2014 13:58
Admin; Спасибо, все понял.
На счет третьего вопроса, он не относится к данному заданию. Я просто хочу знать, если массив данных не прописывать заранее в аргументе функции, потому что он будет создан уже в процессе выполнения программы пользователем и какое имя пользователь даст этому массиву заранее не известно. Как применить функцию к такому массиву?

Максим 17 дек 2014 22:33
AlexWolf
---
1. Для вывода в одну строку используйтн метод Write вместо WriteLine.
3. Вопрос не понял, сейчас метод может обработать любой массив, всё нормально. Какой еще ему массив обрабатывать в этой ситуации кроме того который передали?

AlexWolf 17 дек 2014 14:26
Последняя задачка:

public static void Phibon(int key, long[] tabl)
{

Console.WriteLine("Введите номер последовательности Фибоначчи:");
key = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(tabl[key]);


}

static void Main(string[] args)
{
int key = 0;
long[] tabl=new long[100];
tabl[0] = 1;
tabl[1] = 1;
for (int i = 0; i < tabl.Length; i++)
{
if (i >= 2)
tabl[i] = tabl[i - 1] + tabl[i - 2];
}

while (key < 100)
{ Phibon(key, tabl); }


}

AlexWolf 16 дек 2014 16:15
2 ЗАДАНИЕ:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
public static int Vibor(int[] tripple)
{
int min = tripple[0];
for (int i = 0; i < tripple.Length; i++)
{
if (tripple[i] < min)
min = tripple[i];
}
return min;
}


static void Main(string[] args)
{
int[] tripple= new int[3];
int min;

Console.WriteLine("Введите первое число...");
tripple[0] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второе число...");
tripple[1] = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второе число...");
tripple[2] = Convert.ToInt32(Console.ReadLine());

min = Vibor(tripple);

Console.WriteLine("Наименьшее число: " + min);
Console.ReadKey();

}
}
}

AlexWolf 16 дек 2014 12:35
Уважаемый Admin, вот решение первого задания. У меня к Вам несколько вопросов. 1- как вывести данные в одну строку а не в столбец? 2 - можно мой код еще больше упростить? 3- как указать функции обрабатывать любой массив, а не только тот, что указан в аргументах?
РЕШЕНИЕ:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
public static void Revers(int[] mass)
{
for(int i=0; i < mass.Length; i++)
{ if(mass[i]==5)
mass[i]=-5;
}
}

static void Main(string[] args)
{
int[] mass = {4,5,9,5,7,0,5,6,9,55};
for (int i = 0; i < mass.Length; i++)
Console.WriteLine(mass[i]);

Console.ReadKey(); //Жмем кнопку и обрабатываем массив.

Revers(mass);
for (int i = 0; i < mass.Length; i++)
Console.WriteLine(mass[i]);

Console.ReadKey();
}
}
}

pinguin-linuxoid 15 дек 2014 00:46
УважаеMый адMин отетьте пожалуста недостатки Mоего кода по задаче 3

public static int elem_fib(int x)
{

int[] arr = new int[x + 1];
arr[0] = 1;
arr[1] = 1;

int res = 0;

if (x == 1 || x == 2)
res = 1;


for (int i = 2; i < arr.Length - 1; i++)
{
arr[i] = arr[i - 1] + arr[i - 2];
Console.WriteLine("element " + (i + 1) + " => " + arr[i]);
if ((i + 1) == x) { res = arr[i]; }
}

return res;
}


static void Main(string[] args)
{

int result = 0;//contain in element
int test = 0;

Console.WriteLine("enter number");
test = Convert.ToInt32(Console.ReadLine());
result = elem_fib(test);

Console.WriteLine("\n\n result is " + result);



Console.ReadKey();
}
}
}

Макс 11 дек 2014 01:11
// Задача 3 - Ряд Фибоначчи

static void Main(string[] args)
{
for (int i = 0; i < 25; i++)
{
Console.WriteLine(GetFib(i));
}
}

public static int GetFib(int n)
{
if (n == 0)
{
return 0;
}
else if (n == 1 || n == -1)
{
return 1;
}
else
{
if (n > 0)
{
return GetFib(n - 1) + GetFib(n - 2);
}
else
{
return GetFib(n + 2) - GetFib(n + 1);
}

}
}

жж 09 дек 2014 15:39
пипец.. я походу совсем тупой. брошу лучше эту затею(

baks85 04 дек 2014 20:15
Точно! спасибо, должно быть так int min = minnum[0].

Максим 03 дек 2014 21:49
baks85
---
Ошибка. int min = minnum[1]; здесь вы вместо первого элемента указываете минимальным второй. Если ввести массив 1 2 3, выдаст число 2

baks85 02 дек 2014 18:20
первый пост и первый фейл.... каким-то образом сохранил вместо первого задания два раза второе ..... :(

baks85 02 дек 2014 18:15
Добрый день Admin сперва хочу поблагодарить за понятное изложение выбранной вами темы до данного урока мне все просто и понятно, надеюсь дальше тоже так будет.....
и собственно хочу опубликовать несколько кодов и получить комментарии...
задание №1:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication12
{
class Program
{
public static int MinNum(int[] minnum)
{
int min = minnum[1];
for (int i = 1; i < minnum.Length; i++)
{
if (minnum[i] < min)
min = minnum[i];
}
return min;

}
static void Main(string[] args)
{
Console.WriteLine("Введите количество членов массива");

int j; //переменная для счетчика
int i = Convert.ToInt32(Console.ReadLine()); //ввод количества элементов массива с клавиатуры
int[] array = new int[i];

Console.WriteLine("Введите по очереди члены массива");

for (j = 0; j < array.Length; j++)
{
array[j] = Convert.ToInt32(Console.ReadLine());

int number = 1; //для вывода порядкового номера члена массива
number += j;
Console.WriteLine("вы ввели " +number +"-й член массива");

}
Console.WriteLine("нажмите любую кнопку для поиска минимального члена массива");
Console.ReadKey();

int min = MinNum(array);

Console.WriteLine(min);
Console.ReadKey();


// Console.WriteLine("Что будем делать дальше? выбери вариант");
// Console.WriteLine("1 - ");
}
}
}

_______________________________________________________________

Задание №2:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication12
{
class Program
{
public static int MinNum(int[] minnum)
{
int min = minnum[1];
for (int i = 1; i < minnum.Length; i++)
{
if (minnum[i] < min)
min = minnum[i];
}
return min;

}
static void Main(string[] args)
{
Console.WriteLine("Введите количество членов массива");

int j; //переменная для счетчика
int i = Convert.ToInt32(Console.ReadLine()); //ввод количества элементов массива с клавиатуры
int[] array = new int[i];

Console.WriteLine("Введите по очереди члены массива");

for (j = 0; j < array.Length; j++)
{
array[j] = Convert.ToInt32(Console.ReadLine());

int number = 1; //для вывода порядкового номера члена массива
number += j;
Console.WriteLine("вы ввели " +number +"-й член массива");

}
Console.WriteLine("нажмите любую кнопку для поиска минимального члена массива");
Console.ReadKey();

int min = MinNum(array);

Console.WriteLine(min);
Console.ReadKey();
}
}
}



Oleksandr 26 ноя 2014 23:24
рядок фібоначі з двома змінними

int x = 1, y = 1;
Console.Write(x +" " + y);
for (int i=0; i<15;i++)
{
x = x + y;
Console.Write(" " + x);
y = y + x;
Console.Write(" " + y);
}

Console.ReadKey();

Диманиак 21 ноя 2014 13:22
public static int[] Inverse(int[] array, int param)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == param)
array[i]*=-1;
}
return array;
}
public static int Maxnum(int[] array)
{
int Max = array[0];
for (int i = 1; i < array.Length; i++)
{
if (array[i] > Max)
Max = array[i];
}
return Max;
}
public static int NumFib(int num)
{
int NumF = 0;
if (num < 1)
NumF = 0;
else
if ((num == 1) || (num == 2))
NumF = 1;
else
NumF = NumFib(num - 2) + NumFib(num - 1);
return NumF;
}
static void Main(string[] args)
{
int[] numbers = { 3, 32, 16, 27, 55, 43, 2, 34 };
int[] inverse = Inverse(numbers,27);
foreach (int item in numbers)
Console.WriteLine(item);
Console.ReadKey();
int[] num = new int[3];
Console.WriteLine("Введите три числа");
for (int i=0;i<3;i++)
{
num[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Максимальное число из введенных равно "+Maxnum(num));
Console.ReadKey();
Console.WriteLine("Введите номер числа в ряду Фибоначчи");
int numF = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Число Фибоначчи под номером " + numF + " является " + NumFib(numF));
Console.ReadKey();

}

Максим 11 ноя 2014 18:42
Renneur
---
Бо так Console.WriteLine(numbers) масив не виводиться, в циклі треба кожен елемент

Renneur 11 ноя 2014 17:59
але коли я компілюю програму в консолі вибиває System.Win32[]

Максим 09 ноя 2014 23:14
Renneur
---
Та ні, все норм

Renneur 09 ноя 2014 17:24
Я походу фігню якусь зробив?
class Program
{
public static void ReNum(int[] numbers, int num, int newNum)
{
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == num)
numbers[i] = newNum;
}
}
static void Main(string[] args)
{
int[] numbers = { 1, 2, 3, 5, 6, 4, 8, 5, 9, 7, 55, 77, 55, 5, 5 };
ReNum(numbers, 5, -5);
Console.WriteLine(numbers);
Console.ReadKey();
}
}
}

SoolTi 08 ноя 2014 15:47
Потому что последовательность начинается с 1, а не с 0 =)

Василий 08 ноя 2014 12:10
Алекс, цикл может начинаться и с 0 и с 1. все зависит от способа подсчета и , соответственно, оператора сравнения.
for(i=0,i < index,i++) равносильно for(i=1,i<= index,i++) так как в первом случае оператор "<" а во втором "<=" . Если Index=4 , то в первом случае берутся числа i= (0,1,2,3) а во втором i= (1, 2,3,4).

Alex 07 ноя 2014 23:25
Julia,a зачем вам во второй задаче след код
int min; - объявили переменную, но нигде ее не использовали далее.
или я что-то пропустил? У меня абсолютно нормально работает без доп. объявлений.

К слову сказать, даже с первыми 2 заданиями сидел час где-то - решил не подсматривать в конспект и все писал сам... не сразу получилось))
Скажите, почему у вас счетчик начался с 1, а не с 0?(в задаче по фиббе)


Julia 05 ноя 2014 11:45
public static int Fibonachi(int Index)
{
int result = 0;
int temp = 1;
int sum = 0;
Console.Write("Ряд Фибоначчи:\n ");
for (int i = 1; i <= Index; i++)
{
sum = result + temp; //1/2/3/5/8/13
result = temp; //1/1/2/3/5/8
temp = sum; //1/2/3/5/8/13

Console.Write("{0}, ", result);
}
return result;
}
static void Main(string[] args)
{
Console.WriteLine("Введите порядковый индекс числа из ряда Фибоначчи: ");
int FibIndex = Convert.ToInt32(Console.ReadLine());
int FibNum = Fibonachi(FibIndex);
Console.WriteLine("\n ");
Console.WriteLine("Число из ряда Фибоначчи:\n " + FibNum);
Console.ReadKey();

Julia 05 ноя 2014 11:40
Спосибо за подсказку!!!
Во первых я вывела за цыкл,
а во вторых была еще проблема, функция возращает массив, а саму функцию я не определила как массив и поэтому нечего не работало.
но там еще били всякие не доделки я все поченила, все работает теперь

Максим 03 ноя 2014 20:50
Julia
---
Компилятор пишет, что не весь код метода возвращает значение. Дело в том, что оператора return в цикле недостаточно, может быть ситуация, что вы ввели такое Count, что цикл ни разу не выполнится, и в итоге метод ничего не возвратит. Вынесите return за цикл, в конец метода

Julia 02 ноя 2014 15:55
Здравствуйте Админ! Проверте пожалуйста мои Решения. С задачами 1 и 2 небыло не каких проблем, а вот 3 я сделала двумя способами один с масивом а второй без, в коменты не подглядывала, потом посмотрела что многие так же делали. Но с 3 проблема в строке ( public static int Fibonacci(int CountNum)) под названием Fibonacci крассная волнистая линия не могу понять почему где ошибка, что в первом способе что во втором, помогите пойалуйста... а то уже запарилась совсем...

Задача Номер 1:
class Program
{
public static void ReplaceNum(int[] numbers, int num, int newNum)
{
for (int i = 0; i < numbers.Length; i++)
{
if (numbers[i] == num)
numbers[i] = newNum;
}
}


static void Main(string[] args)
{
int[] numbers = new int[5];
int i;

Console.WriteLine("Insert Numbers:\n ");
for (i = 0; i < numbers.Length; i++)
{
numbers[i] = Convert.ToInt16(Console.ReadLine());
ReplaceNum(numbers, numbers[i], -numbers[i]);

}
Console.WriteLine("result\n:");
foreach(int numbers2 in numbers)
{
Console.WriteLine(numbers2);
}
Console.ReadKey();
}
}
*******************************************************
Задача Номер 2:
public static int GetMin(int[] numbers)
{
int min = numbers[0];
for (int i = 1; i < numbers.Length; i++)
{
if (numbers[i] < min)
min = numbers[i];
}
return min;
}
static void Main(string[] args)
{
int[] numbers = new int[3];
int min;
int i;
Console.WriteLine("Insert Numbers:\n ");
for (i = 0; i < numbers.Length; i++)
{
numbers[i] = Convert.ToInt16(Console.ReadLine());
min = GetMin(numbers);
}
Console.WriteLine("Min number is:\n");
Console.WriteLine(GetMin(numbers));
Console.ReadKey();
}
******************************************************
Задача Номер 3- Фибаначи 1Способ:
class Program
{
public static int Fibonacci( int CountNum,int n, int m)
{

for (int i = 1; i < CountNum; i++)
{
int Fib = n + m;
n = m;
m = Fib;
return Fib;
}
}

static void Main(string[] args)
{

int a = 1;
int b = 0;

int Count = Convert.ToInt16(Console.ReadLine());
Console.Write("{0}, ", Fibonacci(Count,a, b));

Console.WriteLine("...");
Console.ReadKey();
}
}
*********
*********Фибоначи 2 Способ:
class Program
{
public static int Fibonacci(int CountNum)
{
int[] Fib = new int[CountNum];
Fib[0] = 1;
Fib[1] = 1;
for (int i = 1; i < Fib.Length; i++)
{
Fib[i] = Fib[i - 1] + Fib[i - 2];

return Fib[i];
}
}

static void Main(string[] args)
{

int Count = Convert.ToInt16(Console.ReadLine());
Console.Write("{0}, ", Fibonacci(Count));

Console.WriteLine("...");
Console.ReadKey();
}
}
**********************************************
Помогите Пожалуста!!!!

Юрий 19 окт 2014 01:29
Задание 1 (сразу не так понял)

public static void Znakm(int[] array,int argum)
{
for (int i=0;i<array.Length;i++)
{
if (array[i]==argum)
{
array[i]=-array[i];
}
}
}
public static void Main(string[] args)
{

int[] array1 = new int[5];
for (int i=0;i<array1.Length;i++)
{
array1[i]=Convert.ToInt32(Console.ReadLine());
}
int argum;
argum=Convert.ToInt32(Console.ReadLine());

Znakm(array1,argum);

for (int i=0;i<array1.Length;i++)
{
Console.WriteLine(array1[i]);
}

Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);

Юрий 19 окт 2014 01:14
Задача #1

public static void Znakm(int[] array)
{
for (int i=0;i<array.Length;i++)
{
array[i]=-array[i];
}
}
public static void Main(string[] args)
{

int[] array1 = new int[5];
for (int i=0;i<array1.Length;i++)
{
array1[i]=Convert.ToInt32(Console.ReadLine());
}

Znakm(array1);

for (int i=0;i<array1.Length;i++)
{
Console.WriteLine(array1[i]);
}

Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);

Алекс 16 окт 2014 17:51
так 3-я задача у меня получилась

class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите номер числа Фиббоначи");
int el=Convert.ToInt32(Console.ReadLine());
el = arrret(el);
Console.Write("\n"+el+ " ");
Console.ReadKey();
}

public static int arrret(int el)
{
int [] args= new int[50];
args[0] = 1;
args[1] = 1;
for (int i = 2; i < args.Length; i++)
{
args[i] = args[i - 2] + args[i - 1];
}
return args[el-1];
}
}


Татьяна 13 окт 2014 19:45
Поняла, забыла return.

Татьяна 13 окт 2014 19:36
И то же самое, если:

public static int ChangeNumbers(int[] numbers, int change_numbers)
Ошибка 1 "Learn8.Program.ChangeNumbers(int[], int)": не все ветви кода возвращают значение.

Татьяна 13 окт 2014 19:04
Заметила, что у многих в функции не void, а int или int [], а в аргументах и массив, и простое число.
У меня же, если я так пишу, ошибка.
Например:
public static int[] ChangeNumbers(int[] numbers, int change_numbers)
Ошибка 1 "Learn8.Program.ChangeNumbers(int[], int)": не все ветви кода возвращают значение. Почему так?

Slavik 11 сен 2014 19:18
Задача 3 (только не уверен, правильно понял задание)
class Program
{
public static int SearchElement(int massNumber, int massLength)
{
int element = 0;
int[] massFibon = new int[massLength]; // array
massFibon[0] = 1;
massFibon[1] = 1;
for (int i = 2; i < massFibon.Length; i++)
massFibon[i] = massFibon[i - 1] + massFibon[i - 2];

for (int i = 0; i < massFibon.Length; i++)
{
if (massNumber == (i))
element = massFibon[i -1];
}
return element;
}
static void Main(string[] args)
{
int massLength = 0;
int massNumber = 0;
Console.Write("Please enter array's length: ");
massLength = Convert.ToInt32(Console.ReadLine()); // array's length

Console.Write("Please enter index number: ");
massNumber = Convert.ToInt32(Console.ReadLine());
while (massNumber > massLength)
{
Console.Write("\nCorrect yourself. Please enter index number, again: ");
massNumber = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("\n" + SearchElement(massNumber, massLength));
Console.ReadKey();
}
}

Slavik 09 сен 2014 22:48
спасибо за уроки
задание 1
public static void ChangeNumber(int[] mass, int number)
{
for (int i = 0; i < mass.Length; i++)
{
if (mass[i] == number)
{
mass[i] = (-1) * number;
}
}
Console.Write("\n");
for (int i = 0; i < mass.Length; i++)
Console.Write(mass[i] + " ");
}
static void Main(string[] args)
{
int[] mass = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int number = 0;
for (int i = 0; i < mass.Length; i++)
Console.Write(mass[i] + " ");
Console.Write("\nPlease choose number from array: ");
number = Convert.ToInt32(Console.ReadLine());

ChangeNumber(mass, number);
Console.ReadKey();
}
задание 2
class Program
{
public static void MinValue(int[] mass)
{
int min = mass[0];
for (int i = 0; i < mass.Length; i++)
if (mass[i] < min)
min = mass[i];
Console.WriteLine("\nMin number = " + min);
}

static void Main(string[] args)
{
int[] mass = new int[3];
Console.WriteLine("Please enter three number: ");
for (int i = 0; i < mass.Length; i++)
mass[i] = Convert.ToInt32(Console.ReadLine());

MinValue(mass);
Console.ReadKey();
}
}

Di 05 сен 2014 08:12
int[] num = new int[20];
num[0] = 1;
num[1] = 1;
Console.WriteLine("fibbb");
Fibonachi(num);
public static int Fibonachi(int[] num)
{
int NumFib = num [0];
for (int k=2; k < num.Length; k++)
{
num[k] = num[k - 1] + num[k - 2];
Console.WriteLine(num[k]);
NumFib = num[k];
}
return NumFib;
}

MVCage 04 сен 2014 19:07
а у меня вот так получилась первая задача этого урока, все работает, может кому то пригодится. Благодарю за уроки!

using System;

namespace HelloWorld
{
class Program
{
/*
объявляю функцию Turn с аргументами "array"(массив) и "number_turn"(элемент массива).
Функция меняет знак числа "number_turn" в массиве "array"
*/
public static int[] Turn (int[] array, int number_turn)
{
int i = 0;
/*в цикле for сравнивается значение переменной "number_turn" со всеми значениями массива "array"
цикл выполняется столько раз, сколько элементов в массиве
*/
for ( i = 0; i < array.Length; i++ )
{
//если i-тый элемент массива равен значению "number_turn"
if (array[i] == number_turn)
//i-тмоу элементу присваиваем значение "number_turn" умноженное на -1
array[i] = number_turn * (-1);
}
return array;
}


static void Main(string[] args)
{
int i = 0;

//объявляем массив
int[] numbers = { 4, 23, 256, 43, 34, 4, 54, 83, 4 };

//используем функцию.
Turn (numbers, 4);

//далее выводим на экран измененный массив
for (i = 0; i < numbers.Length; i++)
{

Console.WriteLine(numbers[i]);

}
Console.ReadKey();

}
}
}

Вадим 06 авг 2014 13:10
Спасибо, понял!

Максим 05 авг 2014 18:32
Вадим
---
"=" это оператор присваивания, а не равенства. То что справа от оператора записывается в переменную слева. Оператор равенства это "=="

Вадим 05 авг 2014 09:07
Вот, получилось:
public static int Fibonachi(int array)
{
int real = 1;
int prev = 1;
int postprev = 0;
for (int i = 0; i < array; i++)
{
real = prev + postprev;
prev = postprev;
postprev = real;
}
return real;
}

static void Main(string[] args)
{
Console.Write("Какое по счёту число вывести на экран из чисел Фибоначчи?");
int f = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Числом под номером " + f + " = " + Fibonachi(f));
Console.ReadKey();
}

Вадим 05 авг 2014 01:25
Уроки - крутые. Спасибо!
Но смог решить только две задачи.
Вроде, понял, как решать задачку про числа Фибоначчи (посмотрел, как решают другие).
Не смог лишь понять, как можно прийти к:
a + b = c; // здесь понятно, число равно сумме предыдущих.
_____
a = b;
b = c;
Но как быть здесь?
Получается, что, например:
2 + 3 = 5;
2 = 3;
3 = 5;
Как это вообще возможно?

SVORK 02 авг 2014 21:15
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Testowy
{
class Program
{
public static void Minus (int[] mass)
{
for (int i = 0; i < mass.Length; i++)
{
if (mass[i] != 0) mass[i] = -mass[i];
}
}
public static int MinNumb (int a, int b, int c)
{
int min = a;
if (min > b) min = b;
if (min > c) min = c;
return min;
}
public static int Fibonachi (int nom_elem)
{
int a, b, c;
a = 0;
b = 1;
c = 1;
for (int i = 1; i < nom_elem; i++)
{
c = b + a;
a = b;
b = c;
}
return c;
}
static void Main(string[] args)
{
int[] mass = new int[20];
Random rand = new Random();
for (int i = 0; i < mass.Length; i++)
mass[i] = rand.Next(-500, 500);
for (int i = 0; i < mass.Length; i++)
Console.WriteLine(mass[i]);
Console.WriteLine("now, some minusate");
Minus (mass);
for (int i = 0; i < mass.Length; i++)
Console.WriteLine(mass[i]);
int first, second, third;
first = rand.Next();
second = rand.Next();
third = rand.Next();
Console.WriteLine(first);
Console.WriteLine(second);
Console.WriteLine(third);
Console.WriteLine("now, find a minimal");
Console.WriteLine(MinNumb(first, second, third));
Console.WriteLine("zhdu nomer elementa Fibona4i");
int nom_Fibona4i = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(Fibonachi(nom_Fibona4i));
Console.ReadKey();
}
}
}

n0n4m3r 29 июл 2014 16:40
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace forTests
{
class Program
{
public static int[] modChange(int[] array, int toChange)
{
for (int i = 0; i < array.Length; ++i)
{
if (array[i] == toChange)
array[i] = array[i] * (-1);
}
return array;
}

public static void lower(int[] hello)
{
int lowest = hello[0];
for (int i = 1; i < hello.Length; ++i)
{
if (hello[i] < lowest)
lowest = hello[i];
}
Console.Write(lowest);
}
public static void febbernachi(int number)
{
int num1 = 1, num2 = 1;
if (number <= 2)
Console.WriteLine("Element number " + number + " is 1");
else
{
for (int i = 2; i != number; ++i)
{
if (num1 > num2)
num2 += num1;
else
num1 += num2;
}
Console.WriteLine("Element number " + number + " is " + (num1 > num2 ? num1 : num2));
}

}

static void Main(string[] args)
{


int[] array = new int[100];
Random filling = new Random();
for (int i = 0; i < array.Length; ++i)
{
array[i] = filling.Next(-10, 11);
Console.Write(array[i] + " ");
}
Console.Write("\n\n");
modChange(array, -3);

for (int i = 0; i < array.Length; ++i)
Console.Write(array[i] + " ");
Console.Write("\n\n");

int[] three = new int[3];
for (int i = 0; i < three.Length; ++i)
{
three[i] = filling.Next(-10, 11);
Console.Write(three[i] + " ");
}
lower(three);

Console.Write("\n\n");

Console.Write("Enter number: ");
int counter = Convert.ToInt32(Console.ReadLine());
febbernachi(counter);
Console.ReadKey();

}
}
}

Степан 23 июл 2014 17:28
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HelloWorld
{
class Program
{
public static void Output(int[] array)
{
for (int i = 0; i < array.Length; i++)
{
Console.Write(array[i] + " ");
}
Console.WriteLine();
}
public static int SearchMin(int[] array)
{
int Min = 5;
for (int i = 0; i < array.Length; i++)
{
if (Min > array[i])
Min = array[i];
}
return Min;
}
public static void Exchange(int[] array)
{
int Number;
Console.Write("Input some number - ");
Number = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < array.Length; i++)
{
if (array[i] == Number)
array[i] = 8;
}
}
public static void SearchFib(int[] array)
{
int Number;
Console.Write("Input number of Fibonachi - ");
Number = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(array[Number-1]);
}
static void Main(string[] args)
{
Random rand = new Random();
int[] numbers = new int[15];
int[] Fibonachi = new int[15];
int Min;

for (int i = 0; i < 15; i++)
{
numbers[i] = rand.Next(4)+1;
}
Output(numbers);
Min = SearchMin(numbers);
Console.WriteLine("Min = " + Min);
Exchange(numbers);
Output(numbers);
Fibonachi[0] = 1;
Fibonachi[1] = 1;
for (int i = 2; i < 15; i++)
{
Fibonachi[i] = Fibonachi[i - 1] + Fibonachi[i - 2];
}
Output(Fibonachi);
SearchFib(Fibonachi);
Console.ReadKey();
}
}
}

iNew 16 июл 2014 02:04
О. Все, спасибо большое пользователю "Nikolay": пока не дошел до его комента не знал, как сделать.

iNew 16 июл 2014 01:05
Здравствуйте!
Скажите, пожалуйста: как сделать выход из счетчика элементов массива не с помощью "0", а через какой-нибудь символ или слово (к примеру "end"). А то цифру "0", которая служит для выхода, тоже всчитывает в массив. Заранее спасибо!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Project9._2
{
class Class2
{
public static int GetMin(int[] array)
{
int min = array[0];
for (int i = 1; i < 100; i++)
{
if (array[i] < min)
{
min = array[i];

}
}
return min;
}


static void Main (string[] args)

{
int Counter = 0; //Счетчик элементов
int Current_Number = 0; // Текущий элемент массива
int[] Numbers_Array = new int[100]; // Инициализируем массив (Максимальный размер массива 100 элементов, т.к. работать с безразмерным массивом, судя по всему еще рано.
Console.WriteLine("Поочередно введите элементы массива. Элемент со значением 0 прекращает ввод");
do
{
Current_Number = Convert.ToInt32(Console.ReadLine());
Numbers_Array[Counter] = Current_Number;//Запись значений в массив

Counter++;//Инкремент счетчика кол-ва элементов
}
while (Current_Number != 0);

int min;
min = GetMin(Numbers_Array);
Console.WriteLine("vashe minimalnoe chislo = " + min);
Console.ReadLine();
}
}
}

Вадим 09 июл 2014 16:54
тип int здесь вряд ли подходит... быстро "расходуется" :)

public static ulong Fibbo(ulong fib_1, ulong fib_2, ulong nomer)
{
ulong fib_3=0;
for (ulong i = 0; i < nomer; i++)
{
fib_3 = fib_1 + fib_2;
fib_1 = fib_2;
fib_2 = fib_3;
}
nomer = fib_3;
return nomer;
}

static void Main(string[] args)
{// ряд Фиббоначи
ulong fib_1=1;
ulong fib_2=0;
ulong nomer;

Console.Write("Введите номер числа Фиббоначи: ");
nomer = Convert.ToUInt64(Console.ReadLine());

Console.Write("Для порядкового " + nomer + " соответствует число: ");
nomer = Fibbo(fib_1, fib_2, nomer);

Console.WriteLine(nomer);
Console.ReadKey();

Oper 09 июл 2014 15:27
Задача 3.

Начнем с того, что "иногда числа Фибоначчи рассматривают и для отрицательных значений n" (http://ru.wikipedia.org/wiki/Числа_Фибоначчи)

Поэтому я решил учесть все варианты:

[code]
class Program
{
public static int FibonachiElement(int n)
{
int fn = n < 0 ? FibonachiElementNeg(n) : FibonachiElementPos(n);
return fn;
}

public static int FibonachiElementNeg(int n)
{
int fn = (int)Math.Pow(-1, Math.Abs(n) + 1) * FibonachiElementPos(Math.Abs(n));
return fn;
}

public static int FibonachiElementPos(int n)
{
int fn=0; //Инициализирую т.к. return ругается что переменной не присвоено значение.
if (n <= 1) return n;
int f0 = 0, f1 = 1;
for (int i = 2; i <= n; i++)
{
fn = f1 + f0;
f0 = f1;
f1 = fn;
}
return fn;
}

static void Main(string[] args)
{
Console.WriteLine("Введите порядковый номер числа Фибоначчи:");
int p = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(FibonachiElement(p));
Console.ReadKey();
}
}
[/code]

Максим 08 июл 2014 23:30
Oper
---
Массив это ссылочный тип, и int - тип значения. Первый передается в метод по ссылке, что позволяет изменять его значение в методе, а в случае с типом значения - в метод передается копия переменной (ее изменения не влияют на переменную из вне). Чтобы передавать типы значений по ссылке используются ключевые слова ref и out:

public static void ReplaceArrayElement(ref int a)
{
a = 33;
}
...
ReplaceArrayElement(ref b);

Oper 08 июл 2014 16:50
Есть два кода:
Первый код:
class Program
{
public static void ReplaceArrayElement(int a)
{
a = 33;
}

static void Main(string[] args)
{
int b = 5;
ReplaceArrayElement(b);
Console.WriteLine(b);
Console.ReadKey();
}

Второй код:
class Program
{
public static void ReplaceArrayElement(int[] a)
{
a[0] = 33;
}

static void Main(string[] args)
{
int[] b = {5};
ReplaceArrayElement(b);
Console.WriteLine(b[0]);
Console.ReadKey();
}
}

Почему в первом случае мы получим 5, а во тором случае мы получим 33?

В первом случае я передал переменную в процедуру и она не поменялась, во втором случае я передал массив, и исходный массив поменялся.

Максим 05 июл 2014 17:44
Albert
---
Пожалуйста)

Albert 05 июл 2014 00:40
Спасибо Вам огромное за Ваши труды и потраченное время!
Обязательно поделюсь с друзьями и после прохождения курса, отплачу$благодарностью)

Максим 04 июл 2014 04:37
Admin
---
Вместо Console.ReadKey() нужно использовать Console.ReadLine()

Albert 04 июл 2014 00:11
Admin,
public static void ReplaceName(string[] names, string name, string newName) //функция по замене Имени в массиве
{
for (int i = 0; i < names.Length; i++)
{
if (names[i] == name)
{
names[i] = newName;
}
}
}

Она такая же как в уроке

Максим 03 июл 2014 23:24
Albert
---
А где сама функция ReplaceName?

Albert 03 июл 2014 22:52
Не понимаю почему не работает(

string[] names = { "Sergey", "Maxim", "Andrey", "Oleg", "Andrey", "Vlad", "Sergey" }; //задем массив имен

for (int i = 0; i < names.Length; i++) //Вызываем массив "до"
{
Console.WriteLine("Эелемент" + (i + 1) + "ый " + names[i]);
}

Console.WriteLine("Хотите внести изменения? (1-да, 2-нет)");
int v = Convert.ToInt32(Console.ReadKey());
if (v == 1)
{


string nam, namN;
Console.WriteLine("Какое имя заменить?");
nam = Convert.ToString(Console.ReadKey());
Console.WriteLine("Введите новое имя");
namN = Convert.ToString(Console.ReadKey());
ReplaceName(names, nam, namN); // вызов функиции, все строки Сергей заменяются на НИколай


for (int i = 0; i < names.Length; i++) //Вызываем массив "после"
{
Console.WriteLine("Эелемент" + (i + 1) + "ый " + names[i]);
Console.ReadKey();
}
}
else
{
Console.WriteLine(" Вы отказались вносить изменения");
Console.ReadKey();
}

Noob 03 июл 2014 00:57
public static int Fibonacci(int num)
{
int c = 1;
int b = 0;
int d;
{

for (int i = 1; i < num; i++)
{
d = c;
c += b;
b = d;

}
}
return (c);
}

wassup 02 июл 2014 11:31
Третье задание, предполагается, что порядковый номер >= 3;
Уроки хороши, спасибо автору
class Program
{
public static int Fibonacci(int poriadk)
{
int numn = 0;
int numn_1 = 1; int numn_2 = 1; // it means num (n-1) & num (n-2)
for (int i = 3; i<=poriadk; i++)
{
numn = numn_1 + numn_2;
numn_2 = numn_1;
numn_1 = numn;
}
return numn;
}

public static void Main(string[] args)
{
int poriadk; int numn;
Console.Write("Poryadkovy nomer: "); poriadk = int.Parse(Console.ReadLine());
numn = Fibonacci(poriadk);
Console.WriteLine(numn);
Console.ReadLine();

}

}

Максим 18 июн 2014 14:56
Кот Тимофей
---
Рекурсия расходует очень много памяти

Кот Тимофей 18 июн 2014 06:52
Как и ожидалось, простенькая функция без всяких рекурсий спокойно перемалывает восьмизначные числа в качестве аргумента:

public static ulong Fibonacci(int N)
{
ulong t = 0;
ulong s = 1;
ulong r = 0;
while (N !=1)
{
r = s;
s = s + t;
t = r;
--N;
}
return s;
}

Хоть и выглядит покорявее.

Кот Тимофей 18 июн 2014 06:31
Вот такой вариант рекурсии тоже хорошо работает:

public static int Fibonacci(int N)
{
return N > 2 ? Fibonacci(N - 1) + Fibonacci(N - 2): 1;
}

Подозреваю, что рекурсия - не самый оптимальны способ, как-то подозрительно он подвешивает приложение уже на 45 элементе ряда, отжирая одно ядро процессора.

denzorin 11 июн 2014 20:04
Задание 3 :)
class Program
{

public static int Fibonaczi(int q)
{
int fib1 = 1, fib2 = 1 ,buf;


if (q == 1 ||q == 2)
return 1;
for (int i = 3; i <= q; i++) //возможно проблема будет тут
{
buf = fib2;
fib2 = buf + fib1;
fib1 = buf;


}
return fib2;
}
static void Main(string[] args)
{
int s;
Console.WriteLine("Введите номер числа Фибоначчи: ");
s = Convert.ToInt32(Console.ReadLine());


Console.WriteLine(Fibonaczi(s));
Console.ReadKey();
}
}

Yegor 20 май 2014 23:12
Задача 2 с комментариями:

{
class Program
{
public static int MinChislo (int[] first) //Объявление функции для сравнения данных и получения наименьшего числа из массива
{

int min = first[0]; //Объявляем переменную min с 1-м значением массива
for (int i = 0; i < first.Length; i++) //Присваиваем переменной min наименьшее число из массива методом перебора
{
if (first[i]<min)
min = first[i];
}
return min; //на выходе из функции возвращаем наименьшее число в переменную min

}

static void Main(string[] args)
{

int[] first = new int[3]; //Создаем массив цифр из 3-х пустых элементов
Console.WriteLine("Введите 3 числа для определения наименьшего:");
for (int i=0; i<first.Length; i++)
{

first[i] = Convert.ToInt32(Console.ReadLine()); //Присваиваем каждому элементу массива значение введенное с клавиатуры
}
Console.WriteLine();
Console.WriteLine();
Console.WriteLine();

Console.WriteLine("Наименьшее число = " + MinChislo(first)); //Выводим наименьшее число из результата работы функции


Console.ReadKey();


}
}
}

Yegor 20 май 2014 22:14
Задача 1:

class Program
{
public static void ZamChisla (int[] first, int zamena)
{
for (int i = 0; i < first.Length ; i++)
{
if (first[i] == zamena)
first[i] = first[i] * -1;
else if (first[i] == zamena * -1)
first[i] = first[i] * -1;
}
}

static void Main(string[] args)
{
int el;

Console.Write("Сколько элементов будет в массиве: ");
el = Convert.ToInt32(Console.ReadLine());
Console.WriteLine();
int[] first = new int[el];
for (int i=0; i<el; i++)
{
Console.WriteLine("Введите " + (i+1) + "-й элемент из " + el + " первого массива:");
first[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine();

Console.Write("Введите число, находящееся в массиве, которое необходимо заменить на противоположное: ");
Console.WriteLine();
Console.WriteLine();

int zamena;
zamena = Convert.ToInt32(Console.ReadLine());
Console.Write("Вы ввели массив: ");
for (int i = 0; i < el; i++ )
{
Console.Write (first[i] + " ");
}

ZamChisla(first, zamena);

Console.WriteLine();
Console.WriteLine("Вид массива с противоположным числом " + zamena + ":");
for (int i = 0; i < el; i++ )
{
Console.Write(first[i] + " ");
}
Console.ReadKey();

Яков 19 май 2014 23:12
public static int Fobi(int num)
{
int[] fobi=new int[ num+2];
fobi[0] = 0;
fobi[1] = 1;
for (int i = 2; i < fobi.Length-1; i++)
{
fobi[i] = fobi[i - 1] + fobi[i - 2];
}
return fobi[num];


}
static void Main(string[] args)
{
Console.WriteLine("EVvedi id");
int fob=int.Parse(Console.ReadLine());
Console.WriteLine(Fobi(fob));
Console.ReadKey();

третья задача

Максим 22 апр 2014 13:59
Serj
---
ОЧень хорошо для начала

Serj 20 апр 2014 15:34
Вот моя домашка :)))

1)Задача
class Program
{
public static void Antic(int []massiv,int argument)
{

for
(int i = 0; i < massiv.Length; i++)
{
if (massiv[i] == argument)
massiv[i] = massiv[i] * -1;
else if (massiv[i] == argument*-1)
massiv[i] = massiv[i] * -1;
}
}
static void Main(string[] args)
{
string q;
int [] funk = {9,2,9,5,3,3,2,7,5,7};

do
{
Console.WriteLine("Текущее состояние массива:");
foreach (int i in funk)
Console.Write(i + " ");
Console.WriteLine("\nКакую цифру привести к противоположному значению?");
int argument = Convert.ToInt16(Console.ReadLine());
Antic(funk, argument);
Console.WriteLine("Теперь массив с новыми значениями:");
for (int i = 0; i < funk.Length; i++)
Console.Write(funk[i] + " ");
Console.WriteLine("\nВыйти?(Q) Продолжить?(Enter) ");
q = Console.ReadLine();
Console.Clear();
}
while (q != "q");

}
}

2)Задача

class Program
{
public static void Min3(int a, int b, int c)
{
if (a < b && a < c)
Console.WriteLine(a + " меньшее чем " + b + " и " + c);
else if (b < a && b < c)
Console.WriteLine(b + " меньшее чем " + a + " и " + c);
else if (c < a && c < b)
Console.WriteLine(c + " меньшее чем " + a + " и " + b);
else
Console.WriteLine(" Вы ввели недопустимое значение!!!");
}

static void Main(string[] args)
{
string exit;
do
{
Console.Clear();
Console.WriteLine("Введите числа для сравнения");
int a = Convert.ToInt32(Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());
Min3(a, b, c);
Console.WriteLine("Желаете продолжить(Enter)? Или выйти(Q)?");
exit = Console.ReadLine();

}
while (exit != "q");
}
}

3)Фибоначча :))

class Program
{

public static int fibonacceRecive( int f)

{
int []fibonacce = new int[f];
fibonacce[0] = 0;
fibonacce[1] = 1;

for (int i = 2; i < fibonacce.Length; i++)
{
fibonacce[i] = fibonacce[i - 1] + fibonacce[i - 2];
}
f = fibonacce[f - 1];
return f;
}
static void Main(string[] args)
{
string exit;
Console.Clear();
do
{
Console.WriteLine("Введите порядковый номер элемента ряда Фибоначчи :");
int f = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Значение " + f + " элемента ряда Фибоначчи " + fibonacceRecive(f));
Console.WriteLine("Желаете узнать другое значение(Enter)? Выйти(Q)?");
exit = Console.ReadLine();
}
while (exit !="q");

}
}

Вот собственно и все. Спасибо за внимание. Строго не судите только неделю изучаю C# и программирование вообще.

Alinka 06 апр 2014 11:49
Admin, серьезно ? спасибо )
у вас вообще очень понятные уроки и ОЧЕНЬ круто, что вы проверяете решения, спасибо !

Максим 04 апр 2014 18:05
Alinka
---
Очень хорошие решения)

Alinka 03 апр 2014 15:50
и Фибоначчи :)
class Fibonachi_element
{
public static int Return_Value(int n, int k)
{
int[] arr = new int[n];
arr[0] = arr[1] = 1;
for (int i = 2; i < n; i++)
{
arr[i] = arr[i - 1] + arr[i - 2];
}
return arr[k+1];
}

static void Main()
{
Console.WriteLine("Enter number of elements");
int l = Convert.ToInt32(Console.ReadLine()); //lenght
Console.WriteLine("Enter which element you wanna see");
int k = Convert.ToInt32(Console.ReadLine());
if (k > l) { Console.WriteLine("error"); }
int f = Return_Value(l, k);
Console.WriteLine(f);
Console.ReadKey();
}
}

Alinka 03 апр 2014 15:48
второе
class Min_of_three
{
public static int Max_Value(int f, int s, int t)
{
int max;
max = (f > s) ? f : s;
max = (max > t) ? max : t;
return max;
}
static void Main()
{
Console.WriteLine("Enter the first number");
int first = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the second number");
int second = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the third number");
int third = Convert.ToInt32(Console.ReadLine());
Console.WriteLine(Max_Value(first, second, third));
Console.ReadKey();

}

Alinka 03 апр 2014 15:47
Первое
class Changing
{
public static void Change(int k, int[] array)
{
for (int i=0; i<array.Length; i++)
{
if (array[i] == k)
{
array[i] = (-1) * k;
}
}

}
static void Main()
{
Console.WriteLine("Enter number of elements in array");
int n = Convert.ToInt32(Console.ReadLine());
int[] arr = new int[n];
for (int i = 0; i < n; i++)
{
Console.WriteLine("Enter the element");
arr[i] = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine("Enter which element you want to change");
int k = Convert.ToInt32(Console.ReadLine());
Change(k, arr);
foreach (int a in arr)
{
Console.WriteLine(a);
}
Console.ReadKey();
}
}


Максим 31 мар 2014 11:14
12thoughts
---
Это рекурсивный метод решения задачи Фибоначчи. Рекурсия - это когда функция вызывает сама себя. Если хотите, почитайте про рекурсию больше в интернете

12thoughts 30 мар 2014 19:54
return k > 1 ? fibo(k - 1) + fibo(k - 2) : k;
КАК работает эта строчка?? Что она значит я понимаю, но я вообще не понимаю как он узнает что за цифра фибо к -1 и -2.
Взял у Евгения 17 марта.

Максим 27 мар 2014 18:45
Ромик
---
Да, создание переменной min в том случае не имеет смысла

Ромик 27 мар 2014 16:53
Евгений от 17 августа мне кажется не совсем понял, то есть в нашем случае min = GetMin(array); не нужно(.
Хотя и сам не по красоте дз сделал. Первое вообще долго мучался, еле-еле сделал. Зато второе почти не задумываясь
class Programm
{
public static int Min(int[] array)
{
int minimum = array[0];
for (int i = 0; i < array.Length; i++)
{
if (array[i] < minimum)
minimum = array[i];
}
return minimum;
}
static void Main(string[] args)
{
int num1, num2, num3;
Console.WriteLine("Введите 3 числа");
num1 = Convert.ToInt32(Console.ReadLine());
num2 = Convert.ToInt32(Console.ReadLine());
num3 = Convert.ToInt32(Console.ReadLine());
int[] arr = new int[3] { num1, num2, num3 };
Console.Write(Min(arr));
Console.ReadKey();
}
}

Евгений 17 мар 2014 18:58
Задача 3

public static int fibo(int k)
{

return k > 1 ? fibo(k - 1) + fibo(k - 2) : k;
}
static void Main(string[] args)
{
Console.WriteLine("Vvedite nomer chisla v posledovatelnosti");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Chislo Fibonachi: " + fibo(a));
Console.ReadKey();

}

Евгений 17 мар 2014 16:49
Задача 2:
class Program
{
public static int GetMin(int[] array)
{
int min = array[0];
for (int i = 1; i < array.Length; i++)
{
if (array[i] < min)
min = array[i];
}
return min;
}
static void Main(string[] args)
{
int min;
int[] array = new int[3];
Console.WriteLine("Vvedite 3 chisla");
array[0] = Convert.ToInt32(Console.ReadLine());
array[1] = Convert.ToInt32(Console.ReadLine());
array[2] = Convert.ToInt32(Console.ReadLine());
min = GetMin(array);
Console.WriteLine("minimalnoe chislo " + GetMin(array));
Console.ReadKey();
}
}

Евгений 17 мар 2014 16:27
Задача1:

class Program
{
public static void ReturnMinus(int[] array, int minus)
{

for (int i = 0; i < array.Length; i++)
{
if (array[i] == minus)
array[i] = -minus;
}

}
static void Main(string[] args)
{
Console.WriteLine("vvedite chislo");
int b = Convert.ToInt32(Console.ReadLine());

int[] array1 = { 5, 1, 2, 5, 6, 8, 5 };
ReturnMinus(array1, b);
foreach (int i in array1)
{
Console.WriteLine(i);
}
Console.ReadKey();



}
}

Маруся 20 фев 2014 14:04
// Напишите функцию, которая будет менять в массиве целых чисел все элементы, которые равны указанному значению (аргумент)
// на противоположное значение за знаком. Например, все элементы массива которые равны 5, будут меняться на -5.

int[] arr = { 5, 8, 6, 9, 15 };
Console.WriteLine("You have is arr:");
otputArr(arr);
Console.WriteLine("Enter number wich you want replace");
int i = Convert.ToInt32(Console.ReadLine());
replaceNum(arr, i);
Console.WriteLine("You new arr is :");
otputArr(arr);
Console.ReadLine();


}


public static void otputArr(int[] arr)
{
foreach (int el in arr)
{
Console.WriteLine(el);
}

}


public static void replaceNum(int[] arr, int num)
{

for (int i = 0; i < arr.Length; i++)
{

if (arr[i] == num)
arr[i] = num * (-1);
}

}

}
}

Xirus 12 фев 2014 17:37
public static int Fib(int a,int[]arr)
{
for (int i = 0; i < arr.Length; i++)
{

if (i == a) return arr[i];
}
return 0;
}
static void Main(string[] args)
{
/*
Напишите функцию, которая будет возвращать указанный элемент ряда Фибоначчи.
* Ряд Фибоначчи – это ряд, в котором каждый следующий элемент равен сумме двух предыдущих. 1 1 2 3 5 8 13 21…
* Функция принимает порядковый номер элемента, и возвращает соответствующий элемент.
*/
Console.WriteLine("введите число 0-10 ");
int a = Convert.ToInt32( Console.ReadLine());
int[] arr = new int[10];
arr[0] = arr[1] = 1;
for (int i = 2; i < arr.Length; i++)
{
arr[i] = arr[i - 1] + arr[i - 2];

}
for (int i = 0; i < arr.Length; i++)
{

Console.Write(" "+arr[i]);
}
Console.WriteLine();
Console.WriteLine("число Фибоначчи " + Fib(a, arr));

}

Xirus 12 фев 2014 16:57
public static int Min(int a, int b,int c)
{
int min = 0;
if (a < b & a < c) min=a;
else if (b < a & b < c) min=b;
else min=c;
return min;
}
static void Main(string[] args)
{
/*
Задача 2. Напишите функцию, которая будет находить минимальное число из трех.
*/
Console.WriteLine("введите число ");
int a = Convert.ToInt32( Console.ReadLine());
int b = Convert.ToInt32(Console.ReadLine());
int c = Convert.ToInt32(Console.ReadLine());

Console.WriteLine( Min(a,b,c));

}

Xirus 12 фев 2014 16:49
public static void Zamena(int a, int[] arr)
{
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] == a) arr[i] = a * (-1);
Console.Write(" " + arr[i]);
}

}
static void Main(string[] args)
{
/*Задача 1. Напишите функцию, которая будет менять в массиве целых чисел все элементы,
* которые равны указанному значению (аргумент) на противоположное значение за знаком. Например,
* все элементы массива которые равны 5, будут меняться на -5.*/
Console.WriteLine("введите число от 1 до 10 на замену");
int a = Convert.ToInt32( Console.ReadLine());
Random rand = new Random();
int[] arr = new int[10];
for (int i = 0; i < arr.Length; i++)
{
arr[i] = rand.Next(0, 10);
}

Zamena(a, arr);

}

Максим 21 янв 2014 22:49
Александр
---
Ну да, смотря что нужно делать с этими числами

Александр 21 янв 2014 21:48
А для третьей задачи лучше каждый раз выполнять вычисление элемента, или 1 раз заполнить массив??
Реализация обоих вариантов банальна, но какой лучше применять?
Как я понимаю, если надо просто найти 1 число лучше разовое вычисление, а если необходимо множественное обращение к разным элементам ряда, то рациональней записать ряд, после чего выбирать значения по индексу.
Если не прав, поправьте.

Максим 17 янв 2014 17:52
Buboczka
---
После оператора if, если он без фигурных скобок, выполняется только один оператор, если условное выражение истинно:

if (mass[i] == a)
mass[i] *= -1; // это относится к if
Console.WriteLine(mass[i]); // это выполнится в любом случае

Взяв это две строки в фигурные скобки, выведется только одно число

Buboczka 17 янв 2014 16:12
Вот решение второй задачи, вроде работает :)
public static long GetMinNumber(long[] mass)
{
long min = mass[0];
for (int i = 1; i < mass.Length; i++)
{
if (min > mass[i]) min = mass[i];
}
return min;
}
static void Main(string[] args)
{
long[] mass = new long[3];
long a;
Console.WriteLine("Введите три числа по очереди:");
mass[0] = Convert.ToInt64(Console.ReadLine());
mass[1] = Convert.ToInt64(Console.ReadLine());
mass[2] = Convert.ToInt64(Console.ReadLine());
a = GetMinNumber(mass);

Console.WriteLine(a + " " + "Меньшее из трех чисел");
Console.ReadKey();
}

Buboczka 17 янв 2014 15:40
Первое задание сделал так, только не могу понять почему сразу все числа выводит

public static void ReplaceNumber(int[] mass, int a)
{
for (int i = 0; i < mass.Length; i++)
{
if (mass[i] == a) mass[i] *= -1;
Console.WriteLine(mass[i]);
}

static void Main(string[] args)
{
int a;
int[] mass = { 1, 3, 4, 5, 6, 7, 8, 9, 10 };
a = Convert.ToInt32(Console.ReadLine());
ReplaceNumber(mass, a);
Console.ReadKey();
}

Максим 30 дек 2013 14:59
The Saint
---
Да, рекурсия здесь то что нужно

The Saint 30 дек 2013 00:27
Решение третьей задачи

public static int fib(int n)
{
return n > 1 ? fib(n - 1) + fib(n - 2) : n;
}
static void Main(string[] args)
{
Console.WriteLine("Введите порядковый номер числа из ряда Фибоначчи: ");
int n = Convert.ToInt32(Console.ReadLine());
int num = fib(n);
Console.WriteLine("Число из ряда Фибоначчи: " + num);
Console.ReadKey();

The Saint 29 дек 2013 17:47
А вот как я решил первую задачу:

public static void GetMinus(int[] array, int value)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == value)
array[i] = -value;
}
}
static void Main(string[] args)
{
int[] numbers = { 1, 2, 1, 4, 1, 6, 1, 8, 1, 10 };
int value = 1;
GetMinus(numbers, value);
for (int i = 0; i < numbers.Length; i++)
{
Console.WriteLine(numbers[i]);
}
Console.ReadLine();
}
}
}

Fram 16 дек 2013 21:49
еще вариант второй задачи:

public static int minimum(int a, int b, int c)
{
int min = 0;

if (a < b && a < c) min = a;
if (b < a && b < c) min = b;
if (c < a && c < b) min = c;

return min;
}

Fram 16 дек 2013 21:49
еще вариант второй задачи:

public static int minimum(int a, int b, int c)
{
int min = 0;

if (a < b && a < c) min = a;
if (b < a && b < c) min = b;
if (c < a && c < b) min = c;

return min;
}

Максим 15 дек 2013 16:09
palazhevich
---
Со всеми задачами вы хорошо справились

palazhevich 15 дек 2013 02:40
С третьей задачкой пришлось повозиться. Если не вводить number == 1, то
при вводе "1" выполнение останавливается

3)
public static ulong Fib(ulong number)
{
ulong[] fib = new ulong[number];
fib[0] = 1;
fib[1] = 1;
for (ulong i = 2; i < number; i++)
{
fib[i] = fib[i - 1] + fib[i - 2];
}
return fib[number - 1];
}
static void Main(string[] args)
{
do
{
Console.WriteLine("Введите порядковый номер числа Фибоначчи от 1 до 99999999");
ulong number = Convert.ToUInt64(Console.ReadLine());
if (number == 0 || number > 100000000)
{
Console.WriteLine("Неверный порядковый номер");
Console.WriteLine();
}
else
if (number == 1)
{
Console.WriteLine("Число Фибоначчи = 1");
Console.WriteLine();
}
else
{
Console.WriteLine("Число Фибоначчи: " + Fib(number));
Console.WriteLine();
}
Console.WriteLine();
Console.WriteLine("Нажмите Enter");
Console.ReadKey();
}

while (true);
}

palazhevich 15 дек 2013 02:34
1)
public static int GetConversely(int[] number)
{
int a = 5;
for (int i = 0; i < number.Length; i++)
{
if (number[i] == a)
a = number[i] * (-1);
}
return a;
}
static void Main(string[] args)
{
int[] number={1, 3, 5, 7, 9};
int a;
a=GetConversely(number);
for(int i=0; i<number.Length; i++)
{
Console.WriteLine(number[i]);
}
Console.WriteLine(a);
Console.ReadKey();
}


2)
public static int GetMin(int[]array)
{
int min=array[0];
for(int i=0; i<array.Length; i++)
{
if(array[i]<min)
min=array[i];
}
return min;
}
static void Main(string[] args)
{
int[] array = new int[3];
int min;
Console.WriteLine("Введите три числа:");
array[0] = Convert.ToInt32(Console.ReadLine());
array[1] = Convert.ToInt32(Console.ReadLine());
array[2] = Convert.ToInt32(Console.ReadLine());
min = GetMin(array);
Console.WriteLine("Наименьшее число:"+min);
Console.ReadKey();
}

Максим 11 дек 2013 18:05
Никита
---
Классное решение, и без массива

Никита 10 дек 2013 21:43
Вот как я решил Фибоначчи

namespace ConsoleApplication1
{
class Program
{
public static int Fibonachi(int fib_num)
{
int a = 0;
int b = 1;
int c = 0;
for (int i = 1; i <= fib_num; i++)
{
c = a + b;
a = b;
b = c;
}
return a;
}
static void Main(string[] args)
{
Console.WriteLine("Введите порядковый номер числа из ряда Фибоначчи: ");
int fib_num_n = Convert.ToInt32(Console.ReadLine());
int fib_num = Fibonachi(fib_num_n);
Console.WriteLine("Число из ряда Фибоначчи: "+ fib_num);
Console.ReadKey();
}
}
}

Максим 01 дек 2013 14:41
Антон
---
Отлично, продолжайте дальше!

Антон 30 ноя 2013 12:27
public static ulong GetFibonacciNumber(int indexOfNumber)
{
ulong[]fibonacciSequence=new ulong[indexOfNumber];//Объявление массива чисел Фибоначчи, в котором последний элемент - искомый; присвоение значений первым двум элементам
fibonacciSequence[0]=1;
fibonacciSequence[1]=1;

for (int i = 2; i<fibonacciSequence.Length;i++)//Заполнение массива последовательностью Фибоначчи, начиная с третьего элемента
fibonacciSequence[i]=fibonacciSequence[i-1]+fibonacciSequence[i-2];

return fibonacciSequence[indexOfNumber];//Возврат нужного значения
}
static void Main(string[] args)
{
Console.WriteLine("===Getting value of Fibonacci number by it's index===");
Console.WriteLine();

Console.WriteLine("Enter index of required Fibonacci number (not bigger than 50):");
int enteredIndex = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("Required Fibonacci number: " + GetFibonacciNumber(enteredIndex-1));//Уменьшение введенного номера на единицу, т.к. элементы массива нумеруются с нуля
Console.ReadKey();
}

Максим 28 ноя 2013 15:43
Инна
---
А если так:
int Max=a;
if (b > a) { Max = b; }
if (c > b) { Max = c; }

Инна 26 ноя 2013 08:25
2 задача:
class Program
{
public static int MaxInt(int a, int b, int c)
{
int Max=0;
if (a > Max) { Max = a; }
if (b > a) { Max = b; }
if (c > b) { Max = c; }

return (Max);

}
static void Main(string[] args)
{
int Max;
Max = MaxInt(-7, -5,-3);
Console.WriteLine(Max);
Console.ReadKey();
}
}

Максим 07 ноя 2013 01:35
Jin
---
Вот отличное решение Фибоначчи

Jin 06 ноя 2013 12:55
Задача по Фибоначчи:

public static void Fiba(int a) {
int[] fib = new int[a];
fib[0] = 1;
fib[1] = 1;
for (int i = 2; i < fib.Length; i++) {
fib[i] = fib[i - 1]+fib[i-2];
}
Console.WriteLine(fib[a-1]);
Console.ReadKey();
}
static void Main(string[] args)
{
Fiba(8);
}

Андрей 22 окт 2013 00:30
public static int Fibonacci(int b)
{
int a = 1, c = 1, d = 0;
if (b == 1)
a = 1;
else for(int i = 1; i < b; i++)
{
a = c + d;
d = c;
c = a;

}
return a;
}
static void Main(string[] args)
{
int a, b;
Console.WriteLine("Number:");
b = Convert.ToInt32(Console.ReadLine());
a = Fibonacci(b);
Console.WriteLine(a);

//Это для проверки, чтобы каждый раз F5 не тыкать
Console.WriteLine("Number:");
b = Convert.ToInt32(Console.ReadLine());
a = Fibonacci(b);
Console.WriteLine(a);
Console.WriteLine("Number:");
b = Convert.ToInt32(Console.ReadLine());
a = Fibonacci(b);
Console.WriteLine(a);
Console.WriteLine("Number:");
b = Convert.ToInt32(Console.ReadLine());
a = Fibonacci(b);
Console.WriteLine(a);
Console.WriteLine("Number:");
b = Convert.ToInt32(Console.ReadLine());
a = Fibonacci(b);
Console.WriteLine(a);

Console.ReadKey();
}

Андрей 21 окт 2013 19:44
Со второй разобрался.

public static int GetMin(int a, int b, int c)
{
int min;
if (a < b && a < b)
min = a;
else if (b < c && b < c)
min = b;
else
min = c;
return min;
}
static void Main(string[] args)
{
int a, b, c;
int min;
Console.WriteLine("a");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("b");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("c");
c = Convert.ToInt32(Console.ReadLine());

min = GetMin(a, b, c);

Console.WriteLine(min);
Console.ReadKey();
}

Андрей 21 окт 2013 17:24
Помогите, пожалуйста, с решением второй задачи. Начал искать в комментариях к статье, оказалось, что ее вообще никто не решил.

P.S. ЛЮДИ, помните! Эксперимент критерий истины!!!

NikolayBelikov 15 окт 2013 08:27
Спасибо, учту.

Огромное спасибо за эти уроки! Четко, по делу, с практикой и примерами. Будем ждать новых материалов!

Посоветуйте, пожалуйста, литературу по C#, если есть такая возможность. Лучше на почту. В планах всерьез заняться программированием на данной языке.

Максим 14 окт 2013 23:24
Nikolay
---
1. Как я уже тут не раз писал, первые два элемента Фибоначчи это 1 и 1, а не введенные числа.
2. В методе Fibonachy очень много всего. Каждый метод это небольшая подпрограмма, которая выполняет одну функцию. В этом случае, возможно, следовало сделать, чтобы этот метод возвращал только массив чисел Фибоначчи указанной длины, а остальное уже вынести в main. Вот с методом DispayArray все отлично, он выполняет одну конкретную функцию.

А так, хорошо что усложнили задание, продолжайте в том же духе)

Nikolay 14 окт 2013 11:49
Покритикуйте пожалуйста. Задание с Фибоначи усложнил себе задачу, проверками корректности введенных данных, вводом длины массива и вопросом о завершении.


namespace ConsoleApplication1
{
class Program
{
public static int Fibonachy (int[] mass, int n)
{
int i, el;
Console.WriteLine("Введите первые 2 элемента");
for (i = 0; i < 2; i++)
{
mass[i] = Convert.ToInt32(Console.ReadLine());
}
for (i = 2; i < n; i++)
{
mass[i] = mass[i - 2] + mass[i - 1];
}
Console.WriteLine("Введите номер элемента");
el = Convert.ToInt32(Console.ReadLine());
if ((el < n) && (el>0))
{
return mass[el - 1];
}
else
{
Console.WriteLine("Введен неверный номер элемента");
return 0;
}
}
static void DispayArray(int[] mass)
{
for (int i = 0; i < mass.Length; i++)
{
Console.WriteLine(mass[i]);
}
}
static void Main(string[] args)
{
int last, b;
do
{
Console.WriteLine("Введите длину массива");
last = Convert.ToInt32(Console.ReadLine());
if (last > 3)
{
int[] array = new int[last];
b=Fibonachy(array, last);
DispayArray(array);
if (b!=0) Console.WriteLine("Выбранный элемент равен " + b);
}
else
Console.WriteLine("Неверно указана длина массива");
Console.WriteLine("Хотите попробовать еще раз? y / n");
}
while (Console.ReadLine() != "n");
}
}
}

Андрей 12 окт 2013 21:34
здравствуйте,а с вами связаться по аське можно?если да,то напишите плиз в аську 659461350

Максим 11 окт 2013 19:42
Даша
---
отлично сделали задание с Фибоначчи

Булатик 11 окт 2013 15:34
дело в том, что я работал в паскале и делфи, наверно это привычка с 2 циклом.

Даша 11 окт 2013 13:21
public static int[]CreateFibo(int count)
{
int[] array = new int[count];
array[0] = 1;
array[1] = 1;

for (int i = 2; i <count; i++){
array[i] = array[i - 1] + array[i - 2];
}
return array;
}

public static int GetElFibo(int count)
{
if (count == 1){
return 1;
}
else if (count == 0){
return 0;
}
else{
int[] array = new int[count];
array[0] = 1;
array[1] = 1;

for (int i = 2; i < count; i++){
array[i] = array[i - 1] + array[i - 2];
}
return array[count - 1];
}
}

public static void Print(int[] array)
{
for (int i = 0; i < array.Length; i++){
Console.Write(array[i] + " ");
} Console.WriteLine();
}

static void Main(string[] args)
{
Console.Write("Enter number the element: ");
int n = Convert.ToInt32(Console.ReadLine());
int[] array = CreateFibo(n+5);
Console.WriteLine("Fibonacci series");
Print(array);
Console.WriteLine();
int numb = GetElFibo(n);
if (numb == 0) Console.WriteLine("Does not exist!!!");
else Console.WriteLine("Element : " + numb);

Console.ReadKey();
}

Даша 11 окт 2013 11:56
//минимальное число из трех
public static int GetMinValue(int a, int b, int c)
{
int min = a;
if (a > b){
min = b;
}
else if (a > c){
min = c;
}
return min;
}

static void Main(string[] args)
{
int minval = GetMinValue(3, 0, 1);
Console.WriteLine(minval);
Console.ReadKey();
}

Максим 10 окт 2013 01:05
Даша
---
Рекомендую использовать краткую форму записи:
array[i] *= -1; // array[i] = array[i] * -1;

Максим 10 окт 2013 01:02
Булатик
---
Решение задания с Фибоначчи у вас получилось очень сложным. Вложенные циклы здесь это слишком. И если размер массива всего 10, то нельзя получить элемент начиная с 10-го. Здесь ниже в комментариях посмотрите как это решается более эффективно. А кроме этого, в некоторых местах лишний код:

Это:
int m = mas[n];
return m;
Меняем на это:
return mas[n];

Это:
int n;
n=Convert.ToInt32(Console.ReadLine());
На это:
int n = Convert.ToInt32(Console.ReadLine());

Это:
Console.Write("Ваше число="); Console.WriteLine(m);
На это:
Console.WriteLine("Ваше число=" + m);

Даша 09 окт 2013 21:17
class Program
{

public static void ChangeValue(int[] array, int value)
{
for (int i = 0; i < array.Length; i++)
{
if (array[i] == value)
{
array[i] = array[i] * -1;
}
}
}

public static void Print(int[] array)
{
for (int i = 0; i < array.Length; i++)
{
Console.Write(array[i] + " ");
} Console.WriteLine();
}
static void Main(string[] args)
{
int[] numbers = {1, 2, 65, 78, 55, 64};
int a = 2;
Print(numbers);
ChangeValue(numbers, a);
Print(numbers);
Console.ReadKey();
}
}

Булатик 08 окт 2013 16:20
public static int ReplaceInt(int[] mas,int n)
{
for (int i=3; i<mas.Length; i++)
{

for (int k = i-2; k < i; k++)
{
mas[i] += mas[k];

}


} for (int i = 1; i < mas.Length; i++)
{ Console.WriteLine(mas[i]); }

int m = mas[n];
return m;



}
static void Main(string[] args)
{
int[] mas = new int[10];
mas[1]=1; mas[2]=1;
int n;
n=Convert.ToInt32(Console.ReadLine());
int m = ReplaceInt(mas, n); Console.Write("Ваше число="); Console.WriteLine(m);
Console.ReadKey();

Максим 03 окт 2013 16:59
Борис
---
Алгоритм работает правильно, только опять же, ряд Фибоначчи имеет только один вид, и ввод первых элементов не из этой оперы)

Борис 03 окт 2013 14:51
public static int[] Fib(int kol)
{
int[] larray = new int[kol];
Console.WriteLine("Введите первый элемент ряда Фибоначчи:");
larray[0] =Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второй элемент ряда Фибоначчи");
larray[1] = Convert.ToInt32(Console.ReadLine());
for (int i = 2; i < kol; i++)
{
larray[i]=larray[i-1]+larray[i-2];
}
return larray;
}
static void Main(string[] args)
{
Console.WriteLine("kol-vo");
int kol = Convert.ToInt32(Console.ReadLine());
if (kol >= 2)
{
foreach (var item in Fib(kol))
Console.Write(item.ToString() + " ");
}
else Console.WriteLine("Количество элементов в ряду Фибоначчи не может быть меньше 3");
//string idString = String.Join(",", Fib(kol)); вывод возможен и таким макаром)
//Console.WriteLine(idString);
Console.ReadKey();
}
}

Максим 20 сен 2013 16:34
DushaZ
--
Зачем в первом эта строка? int c = a[0];

В третьем задании эти строки были не очень:
a = fib(a);
Console.WriteLine(a);

Зачем записывать возвращаемое значение в переменную с дальнейшим ее выводом, если можно сразу функцию передать как аргумент другой функции:

Console.WriteLine(fib(a));

DushaZ 19 сен 2013 12:16
3)
class Program
{
public static int fib(int a)
{

int[] c = new int[a];
int b;
if (a == 1 || a == 2)
b = 1;
else
{
c[0] = 1;
c[1] = 1;
for (int i = 2; i < a; i++)
{
c[i] = c[i - 2] + c[i - 1];
}
b = c[a - 1];
}
return b;
}
static void Main(string[] args)
{
Console.WriteLine("Введите число");
int a = Convert.ToInt32(Console.ReadLine());
a = fib(a);
Console.WriteLine(a);
Console.ReadKey();
}
}

Пришлось подумать над циклом в третьем задании, вроде вышло ничего.

DushaZ 19 сен 2013 12:15
1)
class Program
{
public static void otric(int[] a, int b)
{
int c = a[0];
for (int i = 0; i < a.Length; i++)
{
if (a[i] == b) a[i] = -a[i];
Console.WriteLine(a[i]);
}
}
static void Main(string[] args)
{

int[] b = { 1, 2, 3, 2, 1, 4, 5, 2, 3, 4, 1, 2, 3, 4, 1, 5, 2, 3, 1, 4, 2, 3, 1, 0 };
Console.WriteLine("Введите число от 1 до 5");
int a = Convert.ToInt32(Console.ReadLine());
otric(b, a);
Console.ReadKey();
}
}

2)
class Program
{
public static void min(int a, int b, int c)
{
int min = a;
if (min > b)
{
min = b;
Console.WriteLine("Второе число самое маленькое");
}
else if (min > c)
{
min = c;
Console.WriteLine("Третье число самое маленькое");
}
else
Console.WriteLine("Первое число самое маленькое");
}
static void Main(string[] args)
{
Console.WriteLine("Введите число");
int a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите число");
int b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите число");
int c = Convert.ToInt32(Console.ReadLine());
min(a,b,c);
Console.ReadKey();
}
}

Андрей 05 сен 2013 09:33
Задача№3
Мое решение для ряда Фибоначи. Проверено, работает. :)

public static int Fibo(int arg1)
{
int answer = 1, i=1;
int[] elem = { 1, 1 };
for (i = 1; i <= arg1; i++)
{
if (i > 2)
{
answer = elem[0] + elem[1];
elem[0] = elem[1];
elem[1] = answer;
}
else answer = 1;

Console.WriteLine(answer);
}
return answer;
}

hojiakbar 22 авг 2013 17:54
tiptop32 21 авг 2013 09:06
----
u menya vidayot oshibku errorbox

невозможно загрузит файл или сборку "return\break"..........


tiptop32 21 авг 2013 19:56
public static void Min(int a, int b, int c)
{
if (a == b && a == c)
{ Console.WriteLine("Наименьшего числа нет"); }
else
{
if (a < b)
{
if (a < c)
{ Console.WriteLine("Наименьшее" + "" + a); }
else
{
if (c < b)
{ Console.WriteLine("Наименьшее" + "" + c); }
}
}
else
{ Console.WriteLine("Наименьшее" + "" + b); }
}

}
static void Main(string[] args)
{
int a, b, c;
Console.WriteLine("Введите 1 число");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 2 число");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите 3 число");
c = Convert.ToInt32(Console.ReadLine());
Min(a, b, c);
Console.ReadKey();
}

Максим 21 авг 2013 15:51
tiptop32
---
отлично, ничего лишнего нет

tiptop32 21 авг 2013 09:06
class Program
{
public static void Obr(int[] array, int b)
{
for (int i = 0; i < array.Length;i++ )
{
if (array[i]==b)
{
array[i] = -b;
}
}
}
static void Main(string[] args)
{
int[] mas = new int[10];
Random r = new Random();
int b;
for (int i = 0; i < mas.Length; i++)
{
mas[i]=r.Next(-10,10);
Console.WriteLine(mas[i]);
}

Console.WriteLine("Введите число для замены");
b = Convert.ToInt32(Console.ReadLine());
Obr(mas, b);
for (int i = 0; i < mas.Length; i++)
{
Console.WriteLine(mas[i]);
}
Console.ReadKey();
}
}

Коля 02 авг 2013 21:47
Все. Разобрался

Коля 02 авг 2013 21:31
Не совсем понял, что такое возвращающая функция. Что значит "вернуть результат" ?

Максим 02 авг 2013 17:26
В первом задании зачем вы в функции возвращаете число, которое было аргументом этой же функции?) Нужно было указать тип возврата void, и ничего не возвращать.

А вот в третьем задании вы прокололись) Главная задача здесь как раз в том, чтобы функция могла вернуть любой элемент, даже далекий. Если необходимо получить 100-й элемент, не будете же вы вручную забивать такой массив. Да и массив здесь совсем не нужен. Кстати, ряд Фибоначчи начинается только так: 1 1 2 3... 2 2 4 - тут принцип тот же, но это не Фибоначчи. Вот мой вариант:

public static int GetEl(int index)
{
int el = 0;
if (index == 1 || index == 2)
el = 1;
int prev = 1, prevPrev = 1;
for (int i = 2; i < index; i++)
{
el = prevPrev + prev;
prevPrev = prev;
prev = el;
}
return el;
}

Сергей 02 авг 2013 14:25
Задание 3
на самом деле интересное задание было. по началу хотел заполнить массив фибоначчи циклом но так и не получилось +(

пробовал вот такой цикл

febonachi[0]=1;
for (int i = 0; i <= 10; i++)

{
febonachi[i] = febonachi[i] + febonachi[i - 1];
}

//////Возможно кто то сумеет заполнить его ряд чисел, было бы интересно увидеть !


public static int ReturnAnyEl(int[] febonachi, int IdEl) {
if (febonachi[IdEl]>=0)
{
Console.WriteLine(febonachi[IdEl-1]);
}
return IdEl;
}
static void Main(string[] args)
{

int[] febonachi = {2,2,4,6,10,16,26,42};

ReturnAnyEl(febonachi, 5);

Сергей 02 авг 2013 12:47
Если честно совсем не сразу получилось даже смотря на приведённые примеры

Таки 1е задание удалось сделать

public static int ReplaceNumber(int[] massiv, int chislo) {
for (int i = 0; i < massiv.Length; i++) {
if (massiv[i] == chislo) {
massiv[i] = -1 * chislo;
}
}
return chislo;
}
static void Main(string[] args)
{
int[] massiv={7,6,9,8,7,4,7,8,5,96,5,4,7};
ReplaceNumber(massiv, 7);//меняю семёрку на противоположную
Console.WriteLine(massiv[0]);//здесь просто вывожу первый элемент(т.к. первая и есть 7ка) конечно можно было бы и вес массив через цикл посмотреть )


Добавить комментарий:

Имя (обязат.)
E-mail (обязат., не публикуется)


Для вставки ваших программ пользуйтесь кнопкой "исходный код"
Вёрстка сайта с нуля

Уникальный Видеокурс!

"Научись верстать сайты и заработай на этом!"

Получить видеокурс

Подпишись на курс по программированию, и узнавай первым о новых уроках!

RSS подписка Страничка Вконтакте Мы в Twitter

Ошибка в тексте? Выделите ее мышкой и нажмите Ctrl+Enter
Поблагодарить автора: Номер карты (ПриватБанк)
5168 7572 4170 8660
WebMoney
R372544961915 U685637142028 Z999792764387
Наверх
Система Orphus