С Новым годом! Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
1

Заполнение динамического массива из файла, где в первой строке указан размер массива, а вторая строка содержит значения

11.12.2018, 15:02. Показов 2218. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заполнение динамического массива из файла, где в первой строке указано какой размер n массива,а вторая строка содержит допустим 100 значений элементов массива. И надо вывести массив n размера. Помогите плиииз!!!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
program PROG5_21_B;
 
var
  t: text;
  n, j, i: integer;
 
begin
  var b: array of integer;
  // Чтение из файла и заполнение массива
  assign(t, 'D:\utorrent\Pascal\II Лаб\text.txt');
  reset(t);
  read(t, n);
  writeln('Многочлен ', n, 'степени');
  SetLength(b, n + 1);
  j := 0;
  while not eoln(t) do
  begin
    inc(j);
    read(t, b[j]);
  end;
  close(t);
  writeln('Исходный массив b: ');
  for i := n downto 0 do
    write(b[i]: 4);
  writeln;
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2018, 15:02
Ответы с готовыми решениями:

Считывание элементов массива из файла, где в первой строке можно задавать размерность массива
Разработать программу для работы с одномерным массивом. Ее функции: - считывание элементов...

Есть строка определенной длины. Вторая строка меньше первой. Найти точку в которой вторая строка входит в первую
Условие: Есть строка определенной длины. Вторая строка меньше первой. Найти точку в которой...

Заполнение динамического массива структур из бинарного файла
Здравствуйте! Нужна помощь в реализации вот такого алгоритма: предположим, что изначально мы...

Заполнение динамического массива данными из файла и отображение на экране
Добрый день. Стоит такая задача: Есть текстовый файл, необходимо считать данные из этого файла и...

15
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
11.12.2018, 16:01 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var t: text;
    b:array of  integer;
    n,i: integer;
begin
  // Чтение из файла и заполнение массива
  assign(t, 'D:\utorrent\Pascal\II Лаб\text.txt');
  reset(t);
  read(t, n);
  writeln('Многочлен ', n, 'степени');
  n := 0;
  while not eof(t) do
   begin
    inc(n);
    SetLength(b,n);
    read(t, b[n-1]);
   end;
  close(t);
  writeln('Исходный массив b: ');
  for i := 0 to n-1 do
  write(b[i]: 4);
  writeln;
end.
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
12.12.2018, 09:46  [ТС] 3
Puporev, Ошибка - Входная строка имела неверный формат.
Вот сам файл text:
5
9 1 1 8 4 7 8 7 5 3
0
Эксперт Pascal/Delphi
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
12.12.2018, 10:31 4
alexfandr, нет ошибки.
Но есть проблема с текстовым файлом. Файл, созданный в блокноте, выбивал exitcode 106.
Пересоздал файл в самой среде fpc, ошибка исчезла.
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
12.12.2018, 15:40  [ТС] 5
ZX Spectrum-128, что мне нужно сделать? У меня выдают все ту же самую ошибку с неверным форматом входной строки
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
12.12.2018, 15:59 6
Создал такой текстовый файл
5
9 1 1 8 4 7 8 7 5 3
в блокноте с именем text.txt, положил его в папку с программой и все работает
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
uses crt;
var t: text;
    b:array of  integer;
    n,i: integer;
begin
clrscr;
  // Чтение из файла и заполнение массива
  assign(t, 'text.txt');
  reset(t);
  read(t, n);
  writeln('Многочлен ', n, 'степени');
  n := 0;
  while not eof(t) do
   begin
    inc(n);
    SetLength(b,n);
    read(t, b[n-1]);
   end;
  close(t);
  writeln('Исходный массив b: ');
  for i := 0 to n-1 do
  write(b[i]: 4);
  readln;
end.
Миниатюры
Заполнение динамического массива из файла, где в первой строке указан размер массива, а вторая строка содержит значения  
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
12.12.2018, 16:00 7
Только не понял при чем здесь 5 степени.
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
12.12.2018, 16:07  [ТС] 8
Puporev, при том что это значения многочлена. Если в первой строчке написано например 3, то массив должен быть построен из 4 элементов. Математика же ну.

Добавлено через 1 минуту
Puporev, Заработало кстати. Надо было просто эти 2 файла кинуть в одну отдельную папку для них. До этого они лежали в папке со всеми моими программами и в этой же папке находился текстовый файл.Странно
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
12.12.2018, 16:09 9
Цитата Сообщение от alexfandr Посмотреть сообщение
Если в первой строчке написано например 3, то массив должен быть построен из 4 элементов. Математика же ну.
Да не совсем дуб, понимаю, но почему если степень=5, то коэффициентов 10?
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
12.12.2018, 16:55  [ТС] 10
Puporev, так программа должна отрезать лишние и вывести только массив равный n+1 элементов. Где n это первая строчка в файле.

Добавлено через 40 минут
Puporev, Вот как это должно быть, только вместо нулей, должны быть числа из файла
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var
  t: text;
  b: array of  integer;
  n, i: integer;
 
begin
  // Чтение из файла и заполнение массива
  assign(t, 'D:\utorrent\Pascal\II Лаб\Новая папка\text.txt');
  reset(t);
  read(t, n);
  close(t);
  writeln('Многочлен ', n, ' степени : ');
  SetLength(b, n + 1);
  for i := n downto 0 do
    write(b[i]: 4);
end.
Помоги пожалуйста
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
12.12.2018, 18:26 11
Я не понимаю что Вы хотите получить. Зачем в файле чисел больше чем n+1. И как они записаны от 0 до n или от n до 0
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
13.12.2018, 13:41  [ТС] 12
Puporev, ну мне по условию задачи так надо. Например многочлен 4 степени это 5 слагаемых, многочлен 7 степени это 8 слагпемых и т д. Программа из файла всегда считывает по порядку как они записаны. Я сделал 2 цикла: 1 считывания из файла, другой для вывода на экран массива(и массив у меня от n до 0, мне так надо по условию). Но я не знаю как написать 1 цикл чтобы он считал до конца строку и переходил к следующей, так как на следующей строчке число которое надо будет умножить на сумму многочлена
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
13.12.2018, 13:45  [ТС] 13
Puporev, Вот сама задача :
5.21 под буквой б. Все переменные должны читаться из файла
Миниатюры
Заполнение динамического массива из файла, где в первой строке указан размер массива, а вторая строка содержит значения  
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
13.12.2018, 14:32 14
Например файл
4
2.35 4.56 1.23 -3.56 -2.35
5.12
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
uses crt;
var t: text;
    b:array of real;
    a:real;
    n,i:integer;
begin
clrscr;
  // Чтение из файла и заполнение массива
assign(t, 'text.txt');
reset(t);
read(t,n);
setlength(b,n+1);
writeln('Многочлен ',n,' степени');
for i:=0 to n do
 begin
  read(t, b[i]);
  write(b[i]:0:2,' ');
 end;
writeln;
read(t,a);
writeln('a=',a:0:2);
close(t);
writeln('Массив, умноженный на ',a:0:2);
for i := 0 to n do
 begin
  b[i]:=b[i]*a;
  write(b[i]:0:2,' ');
 end;
readln;
end.
0
168 / 8 / 1
Регистрация: 15.11.2018
Сообщений: 256
13.12.2018, 14:41  [ТС] 15
Puporev, а нафига вещественные числа?
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
13.12.2018, 14:43 16
Убери, просто на картинке прочитал дан массив вещественных чисел,им в башку залезло, хотя какая разница?
0
13.12.2018, 14:43
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.12.2018, 14:43
Помогаю со студенческими работами здесь

Дано число N. Создать двумерный массив NxN, в котором 1-я строка содержит числа от 1 до N, 2-я строка – удвоенные значения первой строки и т.д
Дано число N. Создать двумерный массив NxN, в котором 1-я строка содержит числа от 1 до N, 2-я...

Функция с применением динамического массива, чтобы размер массива увеличивался по мере необходимости
Ребята, подскажите, кто может, каким образом создать функцию с применением динамического массива,...

размер массива должен быть указан в новых выражениях
static classA **mas; mas = new classA*; static int l = 0; ifstream f("gs.txt"); if (f) { while...

Ввести размер прямоугольной матрицы и значения ее элементов. Построить вектор В, где В() - номер максимального значения в -ой строке
Ввести размер прямоугольной матрицы и значения ее элементов. Построить вектор В, где В(i) - номер...

Размер динамического массива
Как узнать сколько заполненных елементов в динамическом массиве, если под него выделено 400...

Размер динамического массива
Здравствуйте, есть ли какая функция, которая возвращает размер динамического массива (желательно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Как написать микросервис на Go/Golang
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C#
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru