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

Формы, бинарные файлы, откорректировать

23.05.2013, 19:54. Показов 543. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#include <vcl.h>
#pragma hdrstop
#include "LR5_File_bin.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
 
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
int m=0, r=3;
unsigned i=1, k=0,  n=1, mas[10], j=0, g=0;
char fname[30]="";
magaz mz;
ifstream Fin;
fstream Magz;
 
void sravn()
{
int j;
for(j=2; j<i; j++)
if (mz.tsen[n]<mz.tsen[j])
        n=j;
for(j=1;j<i;j++)
if (mz.kol[j]>mz.kol[n] && j!=n)
        {
        mas[k]=j;
        k++;
        }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{  LabeledEdit1->SetFocus();
 strcpy(fname, LabeledEdit1->Text.c_str());
 Fin.open(fname);
 if(!Fin)
   LabeledEdit1->EditLabel->Caption="Нельзя открыть файл " + LabeledEdit1->Text;
   else  LabeledEdit1->EditLabel->Caption="Открыт файл " + LabeledEdit1->Text;
 LabeledEdit2->EditLabel->Caption="Введите имя bin-файлa";
 LabeledEdit2->SetFocus();
}
 
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
        Fin.close();
        Magz.close();
        Form1->Close();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button4Click(TObject *Sender)
{  char str[150]="";
   ostrstream Ostr(str, 150);
 
     Memo1->Clear();
   Fin.clear();
   Fin.seekg(0,ios::beg);
   Fin >> mz.num >> mz.name >> mz.kol[0] >> mz.tsen[0];
 
 while(!Fin.eof())
 { Magz.write((char*)&mz, sizeof(mz));
   Fin >> mz.num >> mz.name >> mz.kol[0] >> mz.tsen[0];
   m++;
 }
 Label1->Caption="В файле " + LabeledEdit2->Text + " " + IntToStr(m) + " записей";
 if(m>0) ShowMessage("Bin-файл создан!");
        else  ShowMessage("Bin-файл не создан!");
 Magz.close();
   Magz.open(fname, ios::in);
  Memo1->SetFocus();
 
  Memo1->Lines->Add("СВЕДЕНИЯ о товарах в бинарном файле:");
  Magz.read((char*)&mz, sizeof(mz));
  while(!Magz.eof())
    { Ostr << mz.num <<' '<< mz.name << ' '<< mz.kol[0] <<' '<< mz.tsen[0]<< ends ;
      Memo1->Lines->Add(str);
      Ostr.clear();
      Ostr.seekp(0,ios::beg);
      Magz.read((char*)&mz, sizeof(mz));
    }
  Magz.close();
}
 
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button7Click(TObject *Sender)
{  strcpy(fname, LabeledEdit2->Text.c_str());
   Magz.open(fname, ios::out|ios::binary);
 if(!Magz)
   LabeledEdit2->EditLabel->Caption="Нельзя открыть файл " + LabeledEdit2->Text;
   else  LabeledEdit2->EditLabel->Caption="Открыт файл " + LabeledEdit2->Text;
}
 
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button2Click(TObject *Sender)
{
  Memo1->Lines->LoadFromFile("tovar.txt");
  Memo1->Lines->Add("*** Загружен txt-файл с данными о товарах ***");
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button5Click(TObject *Sender)
{  fstream Fst;
   char str[150]="";
   ostrstream Bstr(str, 150);
   if (j==0)
        {
        sravn();
        j++;
        Memo1->Lines->Add("Всего отобрано "+IntToStr(k)+" товаров");
        }
if (g<k)
{
        Memo1->Lines->Add("№"+IntToStr(mas[g])+" Наименование "+mz.name[mas[g]]+" Цена "+mz.tsen[mas[g]]+
                " Количество "+mz.kol[mas[g]]);
        g++;
}
}
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
//---------------------------------------------------------------------------
 
#ifndef LR5_File_binH
#define LR5_File_binH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <ComCtrls.hpp>
// #include <stdio.h>
#include <fstream.h>
// #include <ofstream.h>
#include <iostream.h>
#include <strstream.h>
#include <iomanip.h>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:    // IDE-managed Components
        TLabeledEdit *LabeledEdit1;
        TButton *Button1;
        TMemo *Memo1;
        TButton *Button3;
        TButton *Button4;
        TLabeledEdit *LabeledEdit2;
        TButton *Button7;
        TLabel *Label1;
        TButton *Button2;
        TButton *Button5;
        void __fastcall Button1Click(TObject *Sender);
        void __fastcall Button3Click(TObject *Sender);
        void __fastcall Button4Click(TObject *Sender);
        void __fastcall Button7Click(TObject *Sender);
        void __fastcall Button2Click(TObject *Sender);
        void __fastcall Button5Click(TObject *Sender);
private:    // User declarations
public:     // User declarations
        __fastcall TForm1(TComponent* Owner);
};
struct magaz
{ int num;
  char name[15];
  unsigned tsen[9],kol[9];
};
 
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
Открываю из текстового документа товары,цену и их количество. Создаю бинарный файл с этими данными. И обрабатываю эти данные. Нужно вывести число наименований товаров, количество которых больше количества самого дорогого товара. И вывести сведения о самом дорогом товаре.
Закинул часть кода из другой программы в эту, нужно заставить их работать под эту программку. функция sravn() и кнопка Button5Click. Долго ковырялся, но знаний видимо не хватает. Окажите помощь. Буду ОЧЕНЬ благодарен. спасибо
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.05.2013, 19:54
Ответы с готовыми решениями:

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

Откорректировать программу: вхождение символов строки в другую строку
Дана задача: Написать и протестировать функцию STRS(str1, str2), Написать и протестировать...

откорректировать output типа double
короче у меня #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; int...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.05.2013, 19:54
Помогаю со студенческими работами здесь

Откорректировать программу на C++
Нужна помощь. Исправить ошибки в программе. Создать документ о заболеваниях студентов: фамилия,...

Откорректировать программу лабиринт
Программа должна считать с файла матрицу из &quot;1&quot; и &quot;0&quot;, преобразовать ее в вид с &quot; &quot; и &quot;#&quot;. И...

Нужно откорректировать мой код
Надо отобрать сайты на домене &quot;.net&quot; или &quot;.ru&quot;, вычислить их количество и вывести сайты с этими...

Бинарные файлы..
Доброго времени суток, господа! Возникла проблемка с открытием бинарного файла: char...

Структуры,бинарные файлы,массивы
Помогите пожалуйста решить такой вопрос: Подготовить программу,формирующую на основе информации...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
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. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru