All pastes #26939 Raw Edit

Anonymous

public text v1 · immutable
#26939 ·published 2005-10-28 17:21 UTC
rendered paste body
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <fstream>
#include "Unit1.h"
using namespace std;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
  ofstream fr(CRfv); 
   fr.close();
}
//---------Tirkrina ar duomenu failas egzistuoja, suformuoja masyva----------
bool TForm1::Ivedimas( const char * failoVardas, int A[], int &k)
{
   int sk;	//pagalbinis kintamasis ivedimui
   ifstream fd( failoVardas);
   k = 0; 	//skaiciuoja masyvo elementus
   if(fd)
   {
      while( !fd.eof())
      {
         fd >> sk;
         if( !fd.fail())//Užtikrinama, kad failo gale esanti tarpo ar
                        //naujos eilute simbolio nebandytu paversti i skaiciu          
	   {		
            A[k] = sk;
            k++;
         }
      }
      fd.close();
      return true;
   }
   else
      return false;
}
//----------Tikrina ar visi duomenys ivesti----------------------------------
bool TForm1::Duomenys()
{
   if( Ivedimas( CDuom, A, n) && Ivedimas( DDuom, B, z))
      return true;
   else
      return false;
} 
//----------Rezultatus pavaizduoja Memo1 lange-------------------------------
void TForm1::Parodyti1()
{
   Memo1->Lines->LoadFromFile( CRfv);
}
//----------Saugo nurodyta masyva i rezultatu faila--------------------------
void TForm1::Saugoti1( int A[], int n, char * masv)
{
   ofstream fr( CRfv, ios::app); //paruošia faila papildymui
   fr << masv << " masyvas" << endl;
   for( int i=0; i<n; i++)
     fr << A[i] << " ";
   fr << endl;
   fr.close();
}
//---Mygtukas "Ivesti" - iveda pradinius duomenis, parodo juos Memo1 lange---
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   if( Duomenys())
   {
      Saugoti1( A, n, "Pradinis A");
      Saugoti1( B, z, "Pradinis B");
      Parodyti1();
      Button2->Enabled = true;	//Padaro antra mygtuka aktyvu
   }
   else
   {
      Application->MessageBox("Reikalingi failai nerasti", "Klaida", MB_OK);
      Close();
   }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
   RastiMax1();
   RastiMax2();
   ofstream fr( CRfv, ios::app);
   fr << endl;
fr << "Maksimalus masyvo A elementas  " << max1 << " vieta " << max1v  << endl;
fr << "Maksimalus masyvo B elementas  " << max2 << " vieta " << max2v  << endl;
   fr.close();
   Parodyti1();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
  RastiMax1();
  ofstream fr( CRfv, ios::app);
  Saugoti1( A, n, "Po pakeitimo masyvas A");
  Saugoti1( B, z, "Po pakeitimo masyvas B");
  RastiSum();
  fr.close();
  Parodyti1();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
  Close();
}
//---------------------------------------------------------------------------
void TForm1::RastiMax1()
{
  max1 = A[0]; max1v = 0;
  for(int i = 1; i <n; i++)
      if(max1 < A[i]){
      max1 = A[i];
      max1v = i;
      }
}
//----------------------------------------------------------------------------
void TForm1::RastiMax2()
{
  max2 = B[0]; max2v = 0;
  for(int i = 1; i <z; i++)
      if(max2 < B[i])
      {
        max2 = B[i];
        max2v = i;
      }
 }
//-----------------------------------------------------------------------------
void TForm1::RastiSum()

{
    for(int i=1; i > max1v;  i++)
     if(i > max1v){
    A[i]= A[i]+A[i-1];

     }

 }