Помощь - Поиск - Пользователи - Календарь
Полная версия: Строка, файл, матрица!
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
The Wild One
Их "всего" три штуки. Первые две вообще простые знающего человека, а третяя... такие мне точно не решить самому. В общем, помогите пожалуйста разобраться!

1. Дана строка. Все символы строки длиннее 5 заменить на их длинну и вывести на экран.

2. Дан тексовый файл. После каждого слова длиннее 3 поставить "!".

3. Дана матрица: 2 столбца, 10 строк. 1й элемент каждой строки - внутренний диаметр, а второй - внешний диаметр кольца. Отпечатать внешние диаметры тех колец, площадь которых больше площади прямоугольника с заданными сторонами и число колец.
Serega
Если я все правильно понял, то  3 задача не такая уж и сложная. Просто находишь площадь кольца и площадь прямоугольника, и сравниваешь. Что тут не понятно???
The Wild One
Мне не понятны даже первые две.
Serega
Вот вторая задача. Если успею, то третью позже выложу.
Код

program no2;
uses crt;
var f,g:text;
   n,slovo:string;
   i,k:integer;
begin
clrscr;
assign(g,'a:output.txt');
rewrite(g);
close(g);
assign(f,'a:input.txt');
reset(f);
 while not eof(f) do
  begin
   readln(f,n);
    for i:=1 to length(n) do
     begin
         inc(k);
         assign(g,'a:output.txt');
         append(g);
         if (n[i]=' ') and (k>3) then write(g,'!');
         if n[i]=' ' then k:=0;
         write(g,n[i]);
         close(g);
     end;
  end;
close(f);
end.
Serega
Вот третья задача.
Код

program no3;
uses crt;
const p=3.14;
var mas:array[1..10,1..2] of integer;
   i,k,a,b:integer;
begin
clrscr;
writeln('Введите матрицу (10х2)');
 for i:=1 to 5 do
  readln(mas[i,1],mas[i,2]);
write('Введите стороны прямоугольника (а,b) ');
readln(a,b);
 for i:=1 to 5 do
  if (p*sqr(mas[i,2])/2-p*(mas[i,1])/2)>a*b then
   begin
    inc(k);
    writeln(mas[i,2]);
   end;
writeln('Число колец равно ',k);
readkey;
end.
The Wild One
Огромное спасибо!
Serega
Да не за что, обращайся  :)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.