0 / 0 / 2
Регистрация: 01.06.2012
Сообщений: 139
1

Преобразование "столбцов" текстового файла в массивы

08.08.2012, 10:33. Показов 847. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Помогите с задачкой:
имеется txt файл, в нем в два столбика забиты численные значения в виде:
0,65 0,154
0,64 0,814
0,68 0,492
и т.д.
требуется посчитать количество строк в этом файле, это количество разделить на 18 (число может меняться, нужно чтоб можно было его менять), полученный результат использовать для создания массивов, т.е. например 432(строки)/18=24.
Затем эти 432 строки разбить по 24 и сделать массивы:
с 1 по 24 1-го столбца - один массив a1(i), с 1 по 24 2-го столбца - второй массив a2(i)
с 25 по 48 1-го столбца - третий массив a3(i), с 25 по 48 2-го столбца - четвертый массив a4(i)
и т.д.
заранее огромное спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.08.2012, 10:33
Ответы с готовыми решениями:

Парсер столбцов текстового файла в массивы
Задача состоит в том, чтобы из файла, содержащего N столбцов чисел вытянуть эти значения и...

Преобразование текстового файла в двоичный и чтение исходных данных из двоичного файла.
#include<iostream> #include<fstream> #include<locale.h> #include<iomanip> #include <cstdlib>...

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

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

Преобразование текстового файла в массив
Прочитать из текстового файла заданной структуры, созданного по выбору в блокноте, вводом с...

5
es geht mir gut
11270 / 4752 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
08.08.2012, 12:03 2
Visual Basic
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Option Explicit
Dim Arr() As Double
Private Sub Command1_Click()
    Dim NumArr As Integer, i As Integer, j As Integer, s, f As Integer, numS As Integer
    numS = 18   ''''''''''''''Количество строк в каждом массиве
    NumArr = CalcNumString(App.Path & "\1.txt") / numS
    MsgBox "Кол-во строк в файле - " & NumArr * numS & vbCrLf & _
           "Кол-во разбиений - " & NumArr & vbCrLf & _
           "Кол-во массивов - " & NumArr * 2 & vbCrLf & _
           "Кол-во строк в каждом массиве - " & numS
    ReDim Arr(1 To numS * 2, 1 To NumArr)
    On Error Resume Next
    
    f = FreeFile
    Open App.Path & "\1.txt" For Input As #f
       Do While (Not EOF(f))
          For i = 1 To numS * 2 Step 2
              For j = 1 To NumArr
                    Line Input #f, s
                    s = Split(s)
                    Arr(i, j) = Val(Replace(s(0), ",", "."))
                    Arr(i + 1, j) = Val(Replace(s(1), ",", "."))
              Next j
           Next i
       Loop
    Close f
    
 
    For i = 1 To numS * 2 Step 2
          For j = 1 To NumArr
                 Debug.Print Arr(i, j); Arr(i + 1, j)
          Next j
          Debug.Print
    Next i
    
End Sub
 
Function CalcNumString(Fname As String) As Integer
Dim f  As Integer, s As String
    f = FreeFile
    Open Fname For Input As #f
       Do While (Not EOF(f))
          Line Input #f, s
          CalcNumString = CalcNumString + 1
       Loop
    Close f
End Function
1
0 / 0 / 2
Регистрация: 01.06.2012
Сообщений: 139
08.08.2012, 12:50  [ТС] 3
Не так. Массивов должно быть 18, а строк в каждом массиве должно быть 24
0
es geht mir gut
11270 / 4752 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
08.08.2012, 12:56 4
Egor.V.A, небольшая поправка:
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub Command1_Click()
    Dim NumArr As Integer, i As Integer, j As Integer, s, f As Integer, numS As Integer
    numS = 18   ''''''''''''''Количество разбиений
    NumArr = CalcNumString(App.Path & "\1.txt") / numS
    MsgBox "Кол-во строк в файле - " & NumArr * numS & vbCrLf & _
           "Кол-во разбиений - " & numS & vbCrLf & _
           "Кол-во массивов - " & numS * 2 & vbCrLf & _
           "Кол-во строк в каждом массиве - " & NumArr
    ReDim Arr(1 To numS * 2, 1 To NumArr)
    On Error Resume Next
и дальше без изменений.
0
0 / 0 / 2
Регистрация: 01.06.2012
Сообщений: 139
08.08.2012, 12:58  [ТС] 5
все, разобрался, спасибо огромное
0
es geht mir gut
11270 / 4752 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
08.08.2012, 12:58 6
Цитата Сообщение от Egor.V.A Посмотреть сообщение
Не так. Массивов должно быть 18, а строк в каждом массиве должно быть 24
Так и есть в Debug.Print правильно и было, в MsgBox было неправильно.
А если точнее, то массивов 18*2(столбца)=36
1
08.08.2012, 12:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.08.2012, 12:58
Помогаю со студенческими работами здесь

Преобразование текстового файла в типизированный
Написать программу, которая выполняет преобразование текстового файла в типизированный. В текстовом...

Преобразование текстового файла в JSON
Есть текстовый файл такого содержания 9851312827,9851356824;Оружие уличного бойца;А. Тарас, А....

Преобразование текстового файла в типизированный
Здравствуйте. Помогите, пожалуйста, как переделать программу из вида текстового файла в...

Преобразование текстового файла в типизированный
Написать програму, какая выполняет превращение текстового файла в типизирующий. в текстовом файле...

Открытие и преобразование текстового файла
Нужно с помощью JS(jquery) открывать на локальной машине файл (сам сайт будет тоже открываться с...

Преобразование текстового файла в типизированный
Программа должна выполнять преобразование текстового файла в типизированный, но на выходе ничего не...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru