Вот решение твоей задачи на C#, если это тот язык на котором надо реализовать.
namespace YourTask
{
using System;
using System.IO;
using System.Text;
class Program
{
static void Main(string[] args)
{
string message;
bool createFailed = YourTask.CreateFile(out message);//Создаём новый файл с числами.
Console.WriteLine(message);
if (createFailed)//Если файл создан успешно.
{
double[] myNumbers;
if (YourTask.ReadFile(out myNumbers, out message))
{
Console.WriteLine(message);
int i = 1;
foreach (double d in myNumbers)//Выводим элементы на консоль.
{
Console.WriteLine(i + ": {0}", d);
i++;
}
}
else
Console.WriteLine("Ошибка: " + message);
}
}
}
static class YourTask
{
/// <summary>
/// Метод читающий нужные нам данные.
/// </summary>
/// <param name="numbers">Содержит чётные элементы файла</param>
/// <param name="message">Сообщение о выполненной работе</param>
/// <returns>True - успех иначе false</returns>
public static bool ReadFile(out double[] numbers, out string message)
{
string textInFile;
try
{
textInFile = File.ReadAllText(@"c:\YourFile.txt"); //Пытаемся прочесть файл.
string[] splittedText = textInFile.Split(new String[] { "\n" }, StringSplitOptions.RemoveEmptyEntries);//Выделяем числа из строки.
double[] realNumbers = new Double[50]; //Массив который будет содержать нужные нам числа.
int j = 0;
for (int i = 0; i < splittedText.Length; i++)
if (i % 2 != 0) /*А не (i % 2 == 0) Так как индексация в массиве начинается с 0, а в файле с 1.
Нечётные элементы массива = Чётные элементы файла*/
{
realNumbers[j] = Convert.ToDouble(splittedText[i]);//Преобразовываем
j++;
}
numbers = realNumbers;
}
catch(Exception e)
{
numbers = null;
message = e.Message;
return false;
}
message = "Данные прочтены успешно!";
return true;
}
/// <summary>
/// Создаёт файл с числами
/// </summary>
/// <param name="message">Сообщение о выполненной работе</param>
/// <returns>True - успех иначе false</returns>
public static bool CreateFile(out string message)
{
Random rd = new Random(); //Объект для генерации случайных чисел.
double[] realNumbers = new Double[100]; //Массив со случайными числами.
StringBuilder str = new StringBuilder();
for (int i = 0; i < realNumbers.Length; i++)
{
realNumbers[i] = rd.NextDouble() * 10; //Заполняем массив случайными числами.
str.Append(realNumbers[i]); //Помещаем массив в строку с форматированием.
str.Append("\n");
}
try
{
File.WriteAllText(@"c:\YourFile.txt", str.ToString());//Создаём новый файл и записываем в него стоку.
}
catch (Exception e)
{
message = "Ошибка: " + e.Message;
return false;
}
message = "Файл успешно создан !";
return true;
}
}
}