Завдання 4
Увести рядок і віднайти у ньому всі слова, які розпочинаються з великої літери.
1.Скріни програми.
2.Код програми.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Clear();
AnsiString S, S1;
S=Edit1->Text;
int p, n=S.Length();
S=S+" ";
p=1;
for(int i=1; i<=n; i++){
if(S[i]==' ')
{
if(isupper(S[p]) || (S[p]>='?' && S[p]<='?'))
{ S1=S.SubString(p, i-p);
Memo1->Lines->Add(S1);
}
p=i+1;
}
}
}
//---------------------------------------------------------------------------
Завдання 5
Увести рядокі вилучити з нього всі слова, довжина яких є менше за три символи.
1.Скріни програми.
2.Код програми.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString S=Edit1->Text;
S=S+" ";
int p=1, i, dl;
for(i=1; i<=S.Length(); i++)
if(S[i]== ' ')
{ dl=i-p;
if(dl<3)
{ S.Delete(p, i-p+1);
i=p-1; }
else p=i+1;
}
Edit2->Text=S;
}
//---------------------------------------------------------------------------
Завдання 6
Увести рядки до компонента Мемо і записати їх до файла. прочитати дані з файла і відобразити їх в іншому Мемо. Визначити: 9 довжину кожного рядка; 9 впорядкованість за зростанням довжин рядків (вивести відповідне по- відомлення); 9 суму всіх додатних цілих чисел, що зустрічаються; 9 надати можливість обнулити файл (вилучити вміст файла).
1.Скріни програми.
Текст програми
//---------------------------------------------------------------------------
#include <stdio.h>
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
char fn[]="pr.txt";
FILE *f;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
f=fopen(fn,"wt");
if(f==0) {ShowMessage(""Не відкритий!"); return;}
char s[40]; int n=Memo1->Lines->Count;
for(int i=0;i<n;i++)
{ if(Memo1->Lines->Strings[i]=="") continue;
strcpy(s,Memo1->Lines->Strings[i].c_str());
strcat(s,"\n");
fputs(s,f);
}
fclose(f);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
char s[40]; Memo2->Clear();
f=fopen(fn,"rt+");
if(f==0) {ShowMessage("Неможливо прочитати файл"); return;}
while(fgets(s,40,f))
{ if(s[strlen(s)-1]=='\n') s[strlen(s)-1]='\0';
Memo2->Lines->Add((AnsiString) s);
}
fclose(f);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
char s[40];
int dl;
Memo3->Clear();
f=fopen(fn,"rt+");
if(f==0) {ShowMessage("Неможливо прочитати файл ");return;}
while (fgets(s,40,f))
{ if(s[strlen(s)-1]=='\n') s[strlen(s)-1]='\0';
dl=strlen(s);
Memo3->Lines->Add(IntToStr(dl));
}
fclose(f);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
char s[40];
int dl1,dl2;
f=fopen(fn,"rt+");
if(f==0) {ShowMessage("Неможливо прочитати файл ");return;}
fgets(s,40,f);
if(ftell(f)>0)
{ if(s[strlen(s)-1]=='\n') s[strlen(s)-1]='\0';
dl1=strlen(s);
int flag=0;
while (fgets(s,40,f))
{ if (s[strlen(s)-1]=='\n') s[strlen(s)-1]='\0';
dl2=strlen(s);
if (dl1>dl2){flag=1; break;}
dl1=dl2;
}
if(flag==0)ShowMessage("Рядки впорядковано за зростанням!");
else ShowMessage("Рядки не впорядковано!");
}
fclose(f);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
char s[40];
if ((f=fopen(fn,"rt"))==NULL)
{ ShowMessage("Неможливо прочитати файл "); return; }
int num, sum=0;
char *str=" ,.:;!?" ;
while(fgets(s,40,f))
{ if(s[strlen(s)-1]=='\n') s[strlen(s)-1]= '\0';
char *p=new char [strlen(s)+1];
p=strtok(s,str);
while(p!=NULL)
{ num=atoi(p);
p=strtok(NULL,str);
} }
Label2->Caption="Сума чисел дорівнює "+IntToStr(sum);
fclose(f);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
{
f=fopen(fn,"wt");
if(f==0) {ShowMessage("Не відкритий!");return;}
fclose(f);
}
//---------------------------------------------------------------------------
