Алгоритмизация и программирование

Автор работы: Пользователь скрыл имя, 25 Марта 2012 в 06:44, доклад

Описание

1)Дано предложение. Все буквы е в нем заменить на букву и.

Работа состоит из  1 файл

Лаб. работа №5.docx

— 65.36 Кб (Скачать документ)

Министерство образования  и науки Российской Федерации

Информационно-гуманитарное отделение

 

 

 

 

 

 

Лабораторной  работе №5

«Строковые типы данных в Borland Delphi»

Исполнитель     

Руководитель    

 

 

 

Иркутск. 2011 год

 

Оглавление

Общие задания:

Задание №1______________________________________стр. 3-4

Задание №2______________________________________стр.4-5

Задание №3______________________________________стр. 5-6

Задание №4______________________________________стр. 7-6

Задание  №5______________________________________стр. 8-9

Индивидуальные  задания:

    • string (4 задачи).

 

Общие задания:

1)Дано предложение.  Все буквы е в нем заменить на букву и.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные данные: x є строка

Выходные данные: є строка

Связь: =u,если =е

            =,если =е


 

III) Алгоритмизация




 










 


 

V) Программный код

procedure TForm1.Button1Click(Sender: TObject);

var x:String; String; i:byte; y: integer;

Begin

x:= edit1.Text;

Y:= Lengh (x);

For i= 1 yo y do

Begin

If x[i]:= ‘e’ then

[i]:= x[i];

End;

For i:= 1 to y do

Show Message (‘[i]);

End;

End.

2) Дано слово.  Поменять местами его вторую  и пятую буквы.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные данные: мыло  є строка

Выходные данные: m є строка.

Связь: m= замена второй и пятой буквы.

III) Алгоритмизация







 

IV) Тестирование.

Исходные данные

Выходные данные

Примечание

очки

m

 
  1. мышка

машкы

 
  1. домик

димок

 
  1. курица

кцриуа

 
  1. ***
 

ДСТ

  1. !!!
 

ДСТ


 

V) Программный код

procedure TForm1.Button1Click(Sender: TObject);

Var  очки, m: string;

Begin

очки :=edit1.text;

m :=очки[2];

Insert(m, очки, 5);

Delete(книга, 6, 1);

Edit2.text:=очки;

End;

 end.

 

 

 

3) Дан текст. Определить количество цифр в нем.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные данные: file є строка

Выходные данные: S є N

Связь: S=s[i]=s+1

III) Алгоритмизация










  






IV) Тестирование.

Исходные данные

Выходные данные

Примечание

File

S

 
  1. 2

3

 
  1. 3

4

 
  1. 8.9

9.9

 
  1. -4.5

-3.5

 
  1. %
 

ДСТ


 

V) Программный код.

procedure TForm1.Button1Click(Sender: TObject);  
function isDigit( C : Char ) : boolean;  
begin  
Result := Ord( C ) in [48..57]; 

end; 

var file :string;  
Count:integer;  
i:integer;  
begin  file:= edit1.text;  Count := 0;  
for i := 0 to length(file ) do  
begin  
if isDigit( file[I] ) = TRUE then  
Count := Count + 1;  
Edit2.Text:=FloatToStr(count); 

 end;  
end; 

 end.

4) Из слова апельсин путем «вырезок» и «склеек» его букв получить слово спаниель.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные данные: є строка (апельсин).

Выходные данные: b є строка (спаниель).

Связь: b=,если f>0, f0 длины (S).

III) Алгоритмизация.



 













 

IV) Тестирование.

 

Исходные данные

Выходные данные

Примечание

   

b

 

1

апельсин

спаниель

 

2

телефон

 

ДСТ

3

4

 

ДСТ

4

7.1

 

ДСТ

5

***

 

ДСТ


V)  Программный код.

procedure TForm1.Button1Click(Sender: TObject);  
var S, b:String; f:integer;

begin

S:=3;

S:= edit1.Text;

b:= edit2.Text;

F:=Length (S);

If b=если f>0;

B:=;

If b:=если f0;

B:=«Ошибка»;

else

Edit3.Text:= InttoStr (b);

End;

End.

 

End.

 

 

5) Дано слово из 15-ти букв. Переставить в обратном порядке буквы, расположенные между k-й и s-й буквами (т.е. с (k+1)-й по (s-1)-ю). значения k и s вводятся с клавиатуры, k<s.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные данные: h є строка. ,g,t є R/Z+

Выходные данные: h є строка.


Связь: h=                div 2 h[i]=h[t-i+g] h[t-i+g]=y

 

III) Техническое задание.

Исходные данные

Результат

  1. g є R/Z+   

h

  1. t є R/Z+   

h

  1. g є R

ДСТ

  1. t є R

ДСТ


IV) Алгоритмизация.









 



 

 

 

V) Тестирование.

Исходные данные

Результат

h

g

t

h

&#@K!*

4

7

&#@K!*

строка

4

7

скрота

строка

*

7

ДСТ

строка

4

*

ДСТ

строка

4.7

8

ДСТ

123456

4

7

153426


VI) Программный код.

var h:string; p:integer;i,g,t:byte; y:char;

begin h:=edit1.Text;

g:=strtoint(edit2.Text);

t:=strtoint(edit3.Text);

for i:=g to (t) div 2 do

 begin

y:=h[i];

  h[i]:=h[g-i+t];

  h[g-i+t]:=y;

 end;

Edit4.text:=(h);

 end;

 end.

 

 

Индивидуальные  задания.

String17. Дана строка. Преобразовать в ней все строчные буквы (как латинские, так и русские) в прописные.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные  данные: а є строка

Выходные  данные: S є строка

Связь: S=’преобразовать строчные буквы в прописные.’

III) Алгоритмизация.









 

 

 

 

 

IV) Тестирование.

Исходные данные

Выходные данные

Примечание

a

S

 
  1. заколка

заколка

 
  1. магазин

магазин

 
  1. 6767
 

ДСТ

  1. ****
 

ДСТ

  1. «»»»
 

ДСТ


 

V) Программный код.

procedure TForm1.Button1Click(Sender: TObject); 

var a,S: String; i:byte;

Begin

a:= edit1.Text;

S:= edit2.Text;

Begin

S=’преобразовать строчные буквы в прописные’;

Show Message (S);

End;

End.

 String45. Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Найти длину самого короткого слова.

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные  данные: L є строка

Выходные  данные: S є строка

Связь: S(длина)= L,если  ‘Короткое’;

L,если ‘длинное’.

III) Алгоритмизация.


 










 

 

IV) Тестирование.

Исходные данные

Выходные данные

Примечание

X

S

 
  1. компьютер

‘длинное’

 
  1. мало

‘короткое’

 
  1. регистрация

‘длинное’

 
  1. «»

ДСТ

 
  1. *

ДСТ

 

V) Программный код.

procedure TForm1.Button1Click(Sender: TObject); 

var Q,S: String; i:byte;

Begin

Q:= edit1.Text;

S:= edit2.Text;

Begin

 S(длина) if Q=’длинное’ ;

If Q=’короткое’ ;

Else

Show Message (S);

End;

End.

String6. Дан символ C, изображающий цифру или букву (латинскую или рус-скую). Если C изображает цифру, то вывести строку «digit», если латинскую букву — вывести строку «lat», если русскую — вывести строку «rus».

I) Постановка задачи- корректна;

II) Математическая модель:

Исходные  данные: С є строка.

                       Выходные данные:V є строка.

Связь: V=

 

 

 

III) Алгоритмизация.









 

 





 



 



 

 

 

IV) Тестирование.

Исходные данные

Результат

S

N

V

Примечание

1.

3

5

Добавляем символ «.»

 

2.

-1

7

Добавляем символ «.»

 

3.

10

2

Отбрасываем первые символы

 

4.

-2

15

Добавляем символ «.»

 

5.

-5.1

2.3

Добавляем символ «.»

 

6.

3.6

1.4

Отбрасываем первые символы

 

7.

P

   

ДСТ

8.

@

   

ДСТ


IV) Программный код.

Var S ,V:String; N: integer; i:byte;

Begin

N:= edit1.Text;

S:= edit2.Text;

V:= edit3.Text;

n:=Length (S);

If S>N then отбрасываем первые символы;

If S<N then добавляем символ ;

else

Edit4.Text:= InttoStr (V);

End;

End.

String69. Дана строка, содержащая латинские буквы и круглые скобки. Если скобки расставлены правильно (то есть каждой открывающей соответствует одна закрывающая), то вывести число 0. В противном случае вывести или номер позиции, в которой расположена первая ошибочная закрывающая скобка, или, если закрывающих скобок не хватает, число –1.

Информация о работе Алгоритмизация и программирование