IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Задачка с ф-цией Countstrd, и задачка на Литеры
aleksvander
сообщение 29.05.2006 17:14
Сообщение #1





Группа: Пользователи
Сообщений: 3
Пол: Мужской

Репутация: -  0  +


Помогите с заданиями плисс smile.gif

Задание:

Напишите функцию CountStrD(f), которая находит количество строк в файле, заканчивающихся буквой "d".

и

Написать функцию function Test(word:string): boolean принимающую значение True, если В строку входят литеры, содержащиеся в глобальной переменной W типа string.

Сообщение отредактировано: aleksvander - 29.05.2006 17:17
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Clon
сообщение 29.05.2006 18:03
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской

Репутация: -  0  +


aleksvander Ну вот, вообщем, что за пять минут накатал
program func(input,output);
var
w:boolean;
s:string;
f:file of string;
c:char;
n:integer;
procedure enterfile;
begin
w:=false;
writeln('enter text:');
rewrite(f);
while w<>true do
begin
writeln('enter string:');
readln(s);
write(f,s);
writeln('next string?y/n');
readln©;
if c='n' then w:=true;
end;
close(f);
end;
function CountStrD:integer;
begin
reset(f);
while not eof(f) do
begin
read(f,s);
if s[length(s)]='d' then inc(n);
end;
close(f);
write('kol-vo takih strok:');
write(n);
end;
begin
assign(f,'textfile');
enterfile;
countStrD;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 29.05.2006 18:06
Сообщение #3


Гость






aleksvander, второе задание уточни: ВСЕ символы из строки W должны содержаться в переданной функции строке, или КАКИЕ-НИБУДЬ?

Поясняю:
W = 'asdf';
Вызов функции:
1) Test('asdeef');
2) Test('aan')
Что будет результатом функции в 1-ом и 2-ом случаях?

Clon, а зачем ты описал функцию? Где результат возвращаешь?

Тогда, это скорее процедура... Да и задание неплохо бы ВНИМАТЕЛЬНО читать... Функция должна принимать параметр...
 К началу страницы 
+ Ответить 
Clon
сообщение 29.05.2006 18:08
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 37
Пол: Мужской

Репутация: -  0  +


volvo Прога к первой части вопроса, а не ко второй
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Bokul
сообщение 29.05.2006 23:14
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +


Цитата
Напишите функцию CountStrD(f), которая находит количество строк в файле, заканчивающихся буквой "d".


В каком файле? Текстовом или типизированом?

Цитата
Написать функцию function Test(word:string): boolean принимающую значение True, если В строку входят литеры, содержащиеся в глобальной переменной W типа string.

Если
Цитата
ВСЕ символы из строки W должны содержаться в переданной функции строке

то вот решения
var w:string;
function test(word:string):boolean;
var i:byte;
begin
for i:=1 to length(w) do
if pos(w[i],word)=0 then
begin
test:=false;
exit;
end;
test:=true;
end;


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lady_Dark
сообщение 23.01.2007 19:57
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Женский
Реальное имя: Юлия

Репутация: -  0  +


А последнюю задачу как оформить в программу? а то у меня такая на экзамен...
и ничего не получается... не умею я! wacko.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Code(R)
сообщение 24.01.2007 11:26
Сообщение #7





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Алексей

Репутация: -  -1  +


Цитата(Bokul @ 30.05.2006 2:14) *

В каком файле? Текстовом или типизированом?

Строки бывают только в текстовых файлах smile.gif. Каждая строка заканчивается #10#13.
В типизированных - просто последовательность записей.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 24.01.2007 11:32
Сообщение #8


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Bokul, можно короче:

var w:string;
function test(word:string):boolean;
var i:byte;
begin
i := 1;
while (i <= Length(w)) and (Pos(w[i], word) > 0) do inc(i);
test := (i > Length(w));
end;


Цитата(Code®)
Строки бывают только в текстовых файлах smile.gif. Каждая строка заканчивается #10#13.
В типизированных - просто последовательность записей.


Тоесть строки хранащиеся в типизированном файле это не строки ? Читать-то из файла зиписи ты будешь в строку или как ? dry.gif


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Code(R)
сообщение 24.01.2007 11:39
Сообщение #9





Группа: Пользователи
Сообщений: 3
Пол: Мужской
Реальное имя: Алексей

Репутация: -  -1  +


Цитата(klem4 @ 24.01.2007 14:32) *

Bokul, можно короче:

var w:string;
function test(word:string):boolean;
var i:byte;
begin
i := 1;
while (i <= Length(w)) and (Pos(w[i], word) > 0) do inc(i);
test := (i > Length(w));
end;

Тоесть строки хранащиеся в типизированном файле это не строки ? Читать-то из файла зиписи ты будешь в строку или как ? dry.gif


Типизированный файл - это последовательность записей, которые могут состоять из переменных любого типа, в том числе и из строк.

Да, с точки зрения формальной логики - это строки. Но тогда условие задачи становится каким-то корявым smile.gif. По умолчанию предполагается, что это текстовый файл smile.gif.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.01.2007 11:42
Сообщение #10


Гость






Цитата
По умолчанию предполагается, что это текстовый файл
А ты не предполагай ничего и никогда... Уточнять надо... Мало ли, что условие корявое...

И вообще, что за некрофилия? Теме больше полугода - опять подняли...

 ! 
Флейм удален, Code® получает премод на неделю. Я предупреждал...
volvo

 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 14:29
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"