Вопрос № 91218: Уважаемые эксперты!
В вопросе №91202 я и сам понимаю, что ввел несоответствующие типы, но вот каие именно нужно вводить я никак не пойму. Перепробовал разные варианты, все равно выдает ошибку. Поэтому, не могли бы вы написать, как конкретно вызва...Вопрос № 91232: Как на языке Pascal более экономно написать программу деления длинных чисел... (вводятся из файла)...Вопрос № 91300: Помогите пожалуйста решить(завтра сдавать, а я не могу додуматься!!!)
Пусть дан текстовый файл. Для КАЖДОЙ СТРОЧКИ распечатайте первое из слов, содержащих наибольшее число различных букв.
Т.е. создаем в программе файл, заполняем его...Вопрос № 91353: Задание 1:
Если n=3, то какое значение будет иметь переменная f после выполнения следующего составного оператора? Запишите в тетрадь.
begin
f:=1;
i:=2;
1: if i>n then goto 9;
f:=f*i; i:=i+1; goto 1;
9: e...Вопрос № 91359: Здраствуйте помогите пожалуйста решить задачу:
Написать процедуру, которая осуществляет ввод текста, состоящего из неповторяющихся букв....
Вопрос № 91.218
Уважаемые эксперты!
В вопросе №91202 я и сам понимаю, что ввел несоответствующие типы, но вот каие именно нужно вводить я никак не пойму. Перепробовал разные варианты, все равно выдает ошибку. Поэтому, не могли бы вы написать, как конкретно вызвать процедуру?
Заранее благодарен.
Приложение:
Отправлен: 13.06.2007, 12:18
Вопрос задал: D2alex (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Зенченко Константин Николаевич
Здравствуйте, D2alex!
type
tprod=record
{...}
end;
ftprod=file of tprod;{вводите новый тип как указатель на файл tprod} Это не указатель, это тип для файловой переменной. Уточнил эксперт sir henry.
var
fp:ftprod;
После это Вы спокойно используете перменные одного типа. procedure data_input(var fp:ftprod);
когда в Вашей программе подправил все скомпилировалось в ТР7,1
--------- И только наступив на грабли мы преобретаем драгоценный опыт!
Как на языке Pascal более экономно написать программу деления длинных чисел... (вводятся из файла)
Приложение:
Отправлен: 13.06.2007, 13:35
Вопрос задал: Dimx (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Coupler
Здравствуйте, Dimx!
Так как Вы спрашиваете "как написать программу...", то я не буду использовать длинную арифметику, а только опишу алгоритм. Я думаю, нужно реализовать операцию деления целых чисел через вычитание - в результате получаются частное и остаток. Если Вам нужно деление "в вещественных числах", т.е. чтобы получалось 2,5 а не 2 и остаток 1, то можно доработать алгоритм - после первого цикла далее работать с остатком, умножая его на 10 и повторяя первый цикл, получая, таким образом, цифры после запятой.
Реализация деления целых чисел через вычитание (с остатком) для двух целых чисел a и b - в приложении.
Приложение:
Ответ отправил: Coupler (статус: Практикант)
Ответ отправлен: 14.06.2007, 05:09
Вопрос № 91.300
Помогите пожалуйста решить(завтра сдавать, а я не могу додуматься!!!)
Пусть дан текстовый файл. Для КАЖДОЙ СТРОЧКИ распечатайте первое из слов, содержащих наибольшее число различных букв.
Т.е. создаем в программе файл, заполняем его (сколько строк, выбирает пользователь), построчно проверяем, находим В КАЖДОЙ СТРОКЕ первое из слов содержащих наибольшее число различных букв и выводим на экран кол-во букв и сами слова.
Считываем построчно файл.
После считывания одной строки ищем в нём слова.
Найдя слово, сразу же считаем количество не повторяющихся букв.
Если количество не повторяющихся букв этого слова больше чем остальные в этой строке выводим его на экран (+ число не повторяющихся букв)
Если n=3, то какое значение будет иметь переменная f после выполнения следующего составного оператора? Запишите в тетрадь.
begin
f:=1;
i:=2;
1: if i>n then goto 9;
f:=f*i; i:=i+1; goto 1;
9: end;
Задание 2:
Запишите правильную структуру последовательности операторов: a:=1; b:=1; while a+b<8 do begin a:=a+1; b:=b+2 end; s:=a+b. Сколько раз будет повторен цикл и какими будут значения переменных a, b, s после его завершения?
Задание 3:
Чему будет равно значение переменной К после исполнения фрагмента программы
K:=1; while (a[K]<>X) and (K<=10) do K:=K+1;
(Здесь Х=7, а в качестве элементов массива введены числа: 2, 3, 5, 9, 12, 0, 7, 6, 7.)
Отвечает: Ерёмин А.А.
Здравствуйте, Туев Артём Николаевич!
Рассуждения по заданию №1:
Шаг 1: i = 2; f = 1; n = 3; условие i > n не выполняется, значит f := 1*2 = 2; i := 2 + 1 = 3;
Шаг 2: i = 3; f = 2; n = 3; условие i > n снова неверно, поэтому f := 2*3 = 6; i := 3 + 1 = 4;
Шаг 3: i = 4; f = 6; n = 3; условие i > n выполняется, значит код завершает свою работу, а f = 6.
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Отвечает: Coupler
Здравствуйте, Туев Артём Николаевич!
2 задача:
Цикл будет выполнен 2 раза:
1) условие истинно, т.к. 1+1<8. После итерации a=2, b=3, s=5;
2) условие истинно, т.к. 2+3<8. После итерации a=3, b=5, s=8;
3) условие ложно, т.к. 3+5<8 ложно. Работа цикла прекращается.
Т.о. после работы цикла a=3, b=5, s=8.
Только я не понял, что такое "правильная структура цикла".
3 задача:
Семи равен 7-й элемент массива, поэтому тело цикла выполнится 6 раз и после цикла k=7.
Ответ отправил: Coupler (статус: Практикант)
Ответ отправлен: 14.06.2007, 15:22
Вопрос № 91.359
Здраствуйте помогите пожалуйста решить задачу:
Написать процедуру, которая осуществляет ввод текста, состоящего из неповторяющихся букв.
Отвечает: Градов Юрий Михайлович
Здравствуйте, Максим Сергеевич!
var st: string;
SetCh: Set of Char;
ch: Char;
begin
ClrScr;
repeat
ch:=ReadKey;
if not (ch in SetCh) then
begin
st:=st+ch;
SetCh:=SetCh+[ch];
Write(ch);
end;
until ch=#13;
end.
--------- Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: Студент)
Ответ отправлен: 14.06.2007, 11:46