Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 23

Типизированный файл

04.12.2013, 10:08. Показов 1485. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан типизированный файл целых чисел.Переписать в текстовый файл только чётные числа.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.12.2013, 10:08
Ответы с готовыми решениями:

Типизированный файл
Каким образом в builder можно считывать информацию из типизированнаго файла?

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

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

15
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
04.12.2013, 11:12
Цитата Сообщение от FRA Посмотреть сообщение
Дан типизированный файл целых чисел.Переписать в текстовый файл только чётные числа.
А цифры бесконечные должны быть или есть ограничения ?
1
0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 23
04.12.2013, 11:14  [ТС]
нету ограничений
0
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
04.12.2013, 12:08
Цитата Сообщение от FRA Посмотреть сообщение
нету ограничений
Если это C++Builder в то можно так написать - сначала загрузить файл в Memo

Memo1->Lines->LoadFromFile(Имя_файла);

Потом удалить нечетные строки

int x=1;

Memo1->Lines->Delete(x++);
Memo1->Lines->Delete(x++);

И потом сохранить файл

Memo1->Lines->SaveToFile(Имя_файла);

Добавлено через 5 минут
Я кажется ошибся там числа нужны а не строки
1
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 13:00
Цитата Сообщение от sahib1974 Посмотреть сообщение
удалить нечетные строки
Цитата Сообщение от FRA Посмотреть сообщение
чётные числа
...
1
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
04.12.2013, 13:37
Цитата Сообщение от SatanaXIII Посмотреть сообщение
...
Только единичные четные числа нужны ? Например 0-2-4-6-8 или и десятые и сотые тоже ? 10-12-14-16-18...102-104-106 и. т. д.
1
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
04.12.2013, 13:45
sahib1974, например входной файл:
770 123 55 0 95 -11 23 24 6000
Выходной файл с четными числами:
770 24 6000
Добавлено через 1.000001 минуту
sahib1974, нельзя применить понятие четности к дробным числам. Это только для целых.
1
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
05.12.2013, 19:52
Ну как что нибудь вышло ? Конечно интересная задача вот и я решаю второй день уже. Кстати в этом файле только цифры ? или слова тоже есть ?
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33404 / 21514 / 8236
Регистрация: 22.10.2011
Сообщений: 36,914
Записей в блоге: 12
05.12.2013, 19:58
Цитата Сообщение от sahib1974 Посмотреть сообщение
Кстати в этом файле только цифры ? или слова тоже есть ?
Задание внимательно читать не пробовал, прежде чем второй день его решать? Ясно же было сказано:

Цитата Сообщение от FRA Посмотреть сообщение
Дан типизированный файл целых чисел.
, какие слова? Еще раз: входной файл - НЕ текстовый, а бинарный, типизированный, хранящий машинное представление целых чисел, а не строковое их представление...
2
 Аватар для инкремент
12 / 12 / 0
Регистрация: 13.10.2013
Сообщений: 37
05.12.2013, 20:56
Если я правильно понял задачу, то каким нибудь fstream`ом открыть файл, прочитать числа, если остаток от деления на 2 будет равным 0 - записать в файл.
1
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
06.12.2013, 06:12
У четных чисел концы всегда 2 или 4 или 6 или 8 или 0. Надо с этого начать. (По крайней мере я так думаю)

Добавлено через 4 минуты
Я только на билдере работаю если подойдет вам как закончу выложу скрипты

Добавлено через 2 часа 7 минут
Вот написал

C++
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;  int x=0;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->SetFocus();
Memo1->SelStart = x++;
Memo1->SelLength = 1;
Edit1->SelText = Memo1->SelText;
 AnsiString str = Edit1->Text;
 int Length = str.Length();
 char last = str[Length];
 Edit2->Text=last;
 if
(Memo1->SelText == " ")
Timer1->Enabled = false;
 if
(Memo1->SelText == " ")
Timer2->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Edit2->Text = Edit1->Text;
Edit1->Text = Edit1->Text.Trim();
 AnsiString str = Edit1->Text;
 int Length = str.Length();
 char last = str[Length];
 Edit2->Text=last;
  if
(Edit2->Text == "0")
 Memo2->SelText = Edit1->Text;
if
(Edit2->Text == "2")
 Memo2->SelText = Edit1->Text;
if
(Edit2->Text == "4")
 Memo2->SelText = Edit1->Text;
if
(Edit2->Text == "6")
 Memo2->SelText = Edit1->Text;
if
(Edit2->Text == "8")
 Memo2->SelText = Edit1->Text;
 Memo2->SelText = " ";
 Edit1->Clear();
Timer1->Enabled = true;
Timer2->Enabled = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Memo2->Lines->SaveToFile(Имя и адрес файла);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Memo1->Lines->LoadFromFile(Имя и адрес файла);
}
//---------------------------------------------------------------------------
Таймеры прикрепите к кнопкам 1-1 , 2-2 и поставьте желательно время 1 и 2 на 0.010 секунд.

Добавлено через 59 секунд
Но это написано в C++Builder

Добавлено через 2 минуты
Цитата Сообщение от FRA Посмотреть сообщение
Дан типизированный файл целых чисел.Переписать в текстовый файл только чётные числа.
Проверьте может подойдет.

Добавлено через 19 минут

Добавлено через 15 минут

Добавлено через 6 часов 21 минуту
1
 Аватар для инкремент
12 / 12 / 0
Регистрация: 13.10.2013
Сообщений: 37
06.12.2013, 19:00
Можно ещё так

C++
1
2
3
4
5
6
7
bool isEven(int n) {   // Название функции взято из переводчика Google :)
    if (n%2 == 1) {
        return false;
    } else {
        return true;
    }
}
Добавлено через 41 секунду
Передаёшь в функцию число - возвращает true если число чётное и false, если нечётное.
2
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
06.12.2013, 19:09
Цитата Сообщение от инкремент Посмотреть сообщение
bool isEven(int n) { * // Название функции взято из переводчика Google
* * if (n%2 == 1) {
* * * * return false;
* * } else {
* * * * return true;
* * }
}
Спасибо большое. Но можно поточнее как вставить ее чтоб Memo отобразила их ?
1
 Аватар для инкремент
12 / 12 / 0
Регистрация: 13.10.2013
Сообщений: 37
06.12.2013, 19:47
sahib1974, ну как бы вот так

C++
1
2
3
if (isEven(n)) { // n - число
Memo1->Lines->Add(IntToStr(n)); // если число чётное, оно добавляется в Memo1
}
2
7 / 7 / 1
Регистрация: 29.11.2013
Сообщений: 29
06.12.2013, 20:02
[C++ Error] Unit1.cpp(23): E2467 '_fastcall TForm1::Memo1Change(TObject *)' cannot return a value
[C++ Error] Unit1.cpp(23): E2467 '_fastcall TForm1::Memo1Change(TObject *)' cannot return a value
[C++ Warning] Unit1.cpp(30): W8066 Unreachable code

Компилятор ворчит

Добавлено через 3 минуты
[C++ Error] Unit1.cpp(24): E2467 '_fastcall TForm1::Button1Click(TObject *)' cannot return a value
[C++ Error] Unit1.cpp(26): E2467 '_fastcall TForm1::Button1Click(TObject *)' cannot return a value
[C++ Warning] Unit1.cpp(31): W8066 Unreachable code

И так тоже ругается комппилятор

Добавлено через 1 минуту
Может какой то символ я не дописал - мда надо подумать.
1
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
09.12.2013, 09:17
Цитата Сообщение от sahib1974 Посмотреть сообщение
Memo1Change(TObject *)' cannot return a value
Цитата Сообщение от sahib1974 Посмотреть сообщение
Button1Click(TObject *)' cannot return a value
Найдите в коде эти функции и удалите из них все упоминания о return. Они (эти функции) не возвращают значения, они имеют тип void.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.12.2013, 09:17
Помогаю со студенческими работами здесь

как в с++ создается типизированный файл? и как вообще понять типизированный?
вопрос в теме

Типизированный файл. Создать файл целых чисел. Определить суммы чисел до локальных минимумов, записав их в новый файл
Пожалуйста, помогите с решением: Создать файл целых чисел. Определить суммы чисел до локальных минимумов, записав их в новый файл....

Типизированный файл. В новый файл записать все массивы исходного, исключая четвертые элементы
2)копмоненты заданного типизированного файла - массивы, состоящие из пяти вещественных чисел каждый. в новый типизированный файл записать...

Создать типизированный файл из вещественных чисел, записать во второй файл числа первого файла
Помогите пожалуйста написать программу Задача: создать типизированный файл из вещественных чисел, записать во второй файл числа...

Gb записи в типизированный файл создается файл огромного размера больше 2Гб что делать?
Доброе утро, в программе создаю файл с данными о студентах(лабараторная работа) он созается но весит больше 2Гб так должно быть или я что...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru