Поиск по массиву - C# (183584)
Формулировка задачи:
Здравствуйте! Я задался вопросом. У меня есть массив, в котором записаны номера ста телефонов, в том числе и мой номер. Все номера уникальны. Я не знаю индекса, под которым он записан. В общем я ничего о своём номере не знаю, кроме того, что он там точно есть. Мне нужно найти мой номер. У меня возник логический вопрос входе моих размышлений - можно ли сделать имя каждой переменной в массиве? Например, я не знаю номера своего телефона, но знаю, что он записан под именем "МОЙ". Это второй вопрос, а первый, как найти номер телефона. Спасибо всем кто поможет.
П.С. Я сам этот вопрос себе придумал, чтобы понять как работают массивы, что они могут, а чего нет.
Мои размышления привели меня к вопросу, как, зная значение в массиве, например, число 51, найти его индекс? Надо сравнить каждый индекс массива с этим числом циклом, и, когда оно будет найдено, то вывести индекс, под которым оно находится. Можно пример, если не трудно?
Решение задачи: «Поиск по массиву»
textual
Листинг программы
using System;
namespace ConsoleApplication8
{
/// <summary>
/// Телефон
/// </summary>
public struct Phone
{
public string Name { get; set; }
public string TelephonNumber { get; set; }
}
class Program
{
static void Main(string[] args)
{
int Count= 3;
Phone[] PhoneNumbers = new Phone[Count];
PhoneNumbers[0].Name = "Оля";
PhoneNumbers[0].TelephonNumber = "123";
PhoneNumbers[1].Name = "Мой";
PhoneNumbers[1].TelephonNumber = "345";
PhoneNumbers[2].Name = "kolorotur";
PhoneNumbers[2].TelephonNumber = "777";
//ищу свой телефон, зная, что назвал именем - Мой
Phone MyTelephone = Array.Find(PhoneNumbers, MyNumber);
//вывожу данные
Console.WriteLine(MyTelephone.Name + " - " + MyTelephone.TelephonNumber);
Console.ReadKey();
}
private static bool MyNumber(Phone t)
{
return t.Name == "Мой";
}
}
}