Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
1

Подсчитать в строке самую длинную последовательность подряд идущих букв А

11.07.2011, 22:34. Просмотров 1028. Ответов 16
Метки нет (Все метки)

Здравствуйте помогите пожалуйста!
В основной программе должен быть оператор выбора задач, оформленных в виде подпрограмм..
подпрограммы готовы
1.Задано рассчетное значение резистора и массив стандартные значения 1,01,31,62,03,34.75,1. Выбрать близжайшее меньшее стандартное значение.
2.Дана строка. Подсчитать самую длинную последовательность подряд идущих букв А.
1
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2011, 22:34
Ответы с готовыми решениями:

Подсчитать самую длинную последовательность подряд идущих букв А
Ввести строку. Подсчитать самую длинную последовательность подряд идущих букв А.

Дана символьная строка. Подсчитать самую длинную последовательность подряд идущих букв а.
Дана символьная строка. Подсчитать самую длинную последовательность подряд идущих букв а.

Подсчитать, наибольшее количество букв “а”, идущих подряд в данной строке
2) Дана строка символов. Подсчитать, наибольшее количество букв “а”, идущих подряд в данной строке...

Дана символьная строка.подсчитать самую длинную последовательность
подряд идущих букв а.

Подсчитать наибольшее количество идущих подряд пробелов в строке
Даны натуральное число n и символы S1, …,Sn (строка). Подсчитать наибольшее количество идущих...

16
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
11.07.2011, 22:43 2
ну если подпрограммы готовы то в чем проблема??? через case делайте выбор и все
0
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
11.07.2011, 22:47  [ТС] 3
упс... ошибся, подпрограммы НЕ готовы... писал быстро, не заметил
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
11.07.2011, 23:04 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

вот для 2 задачи
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure poisk(s:string;var j:integer);
var
i,k:integer;
begin
k:=0;j:=0;
for i:=1 to length(s) do
begin
if s[i]='a' then inc(k) else
begin
if k>j then j:=k;
k:=0;
end;
end;
end;
а в первой задаче в массиве 1 и 01 какая разница???
1
11.07.2011, 23:04
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
11.07.2011, 23:13  [ТС] 5
а в первой задаче в массиве 1 и 01 какая разница???[/QUOTE]


незнаю, так было в задание написано...

Добавлено через 1 минуту
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure poisk(s:string;var j:integer);
var
i,k:integer;
begin
k:=0;j:=0;
for i:=1 to length(s) do
begin
if s[i]='a' then inc(k) else
begin
if k>j then j:=k;
k:=0;
end;
end;
end;

ты проверил работает ли она???
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
11.07.2011, 23:16 6
канешно работает
0
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
11.07.2011, 23:21  [ТС] 7
что то у меня не хочет... пишет ожидалось описанние или begin
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
11.07.2011, 23:24 8
Цитата Сообщение от Lonson Посмотреть сообщение
что то у меня не хочет... пишет ожидалось описанние или begin
это подпрограмма а не программа)
0
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
11.07.2011, 23:29  [ТС] 9
ааа... понятно... а вторую не сможешь сделать???
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
11.07.2011, 23:36 10
Цитата Сообщение от Lonson Посмотреть сообщение
ааа... понятно... а вторую не сможешь сделать???
Pascal
1
2
3
4
5
6
7
8
9
10
procedure sort(var amin:real);
var
i:integer;
const a:array[1..7] of real=(1,01,31,62,03,34.75,1);
begin
amin:=a[1];
for i:=2 to 5 do
if a[i]<amin then
amin:=a[i];
end;
1
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
11.07.2011, 23:43  [ТС] 11
А полностью програама как получится???

Добавлено через 2 минуты
а полностью???
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
12.07.2011, 00:12 12
Цитата Сообщение от Lonson Посмотреть сообщение
А полностью програама как получится???

Добавлено через 2 минуты
а полностью???
Pascal
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
uses crt;
var
i,n,k,g,dl,kol:integer; amin:real;
 
s:string;
procedure sort(var amin:real);
var
i:integer;
const a:array[1..7] of real=(1,01,31,62,03,34.75,1);
begin
amin:=a[1];
for i:=2 to 5 do
if a[i]<amin then
amin:=a[i];
end;
 
function poisk( s:string):integer;
var
i,k,j:integer;
begin
k:=0;j:=0;
for i:=1 to length(s) do
begin
if s[i]='a' then
inc(k)
else  begin
if k>j then
j:=k;
k:=0
end;
end;
if s[length(s)]='a' then
if k>j then
j:=k;
poisk:=j;
end;
 
begin
clrscr;
writeln('vvedite stroku');
readln(s);
kol:=poisk(s);
writeln('ko-stvo a v stroke -> ',kol);
sort(amin);
writeln('menshee znachenie ',amin:3:3);
readkey;
end.
меню уж как то сами
1
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
12.07.2011, 00:19  [ТС] 13
назови меня лохом XD какое миню??

Добавлено через 44 секунды
*меню
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
12.07.2011, 00:28 14
Цитата Сообщение от Lonson Посмотреть сообщение
В основной программе должен быть оператор выбора задач
я так понял нужно выбирать какое действие вы хотите зделать 1 или 2
0
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
12.07.2011, 00:31  [ТС] 15
Цитата Сообщение от bigar Посмотреть сообщение
я так понял нужно выбирать какое действие вы хотите зделать 1 или 2
да. нужно выбрать первое или второе
1
bigar
53 / 53 / 36
Регистрация: 18.02.2011
Сообщений: 146
12.07.2011, 00:37 16
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

ну тогда вот
Pascal
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
uses crt;
var
i,n,k,g,dl,kol:integer; amin:real;
 
s:string;
procedure sort(var amin:real);
var
i:integer;
const a:array[1..7] of real=(1,01,31,62,03,34.75,1);
begin
amin:=a[1];
for i:=2 to 5 do
if a[i]<amin then
amin:=a[i];
end;
 
function poisk( s:string):integer;
var
i,k,j:integer;
begin
k:=0;j:=0;
for i:=1 to length(s) do
begin
if s[i]='a' then
inc(k)
else  begin
if k>j then
j:=k;
k:=0
end;
end;
if s[length(s)]='a' then
if k>j then
j:=k;
poisk:=j;
end;
 
begin
clrscr;
writeln('viberite deysvie ');
writeln('1- ko-svo a v stroke ');
writeln('2- rezistor ');
writeln('3- Vihod ');
readln(g);
case g of
1:begin
writeln('vvedite stroku');
readln(s);
kol:=poisk(s);
writeln('ko-stvo a v stroke -> ',kol);
end;
2:begin
sort(amin);
writeln('menshee znachenie ',amin:3:3);
end;
3:exit
else writeln('neplavilniy vvod');
end;
readkey;
end.
1
Lonson
9 / 9 / 0
Регистрация: 11.07.2011
Сообщений: 16
12.07.2011, 00:46  [ТС] 17
спасибо))
1
12.07.2011, 00:46
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.07.2011, 00:46

Верно ли, что в строке есть по крайней мере n подряд идущих букв a.
Дана строка и число n. Верно ли, что в ней есть по крайней мере n подряд идущих букв a.

Подсчитать самую длинную последовательность подряд идущих букв а.
Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а. Желательно весь...

Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а.
Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а.


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru