Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 15.12.2013
Сообщений: 68

Вставить после каждой нечетной строки первую строку!

01.04.2014, 19:47. Показов 1818. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нашел на форуме код, только с немного другим заданием(вставить первую после четной строки), но он не работает должным образом!
Вот он. Что исправить?
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
61
62
63
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j: integer;
begin
  randomize;                   //   инициализация счетчика случайных чисел
  n:=StrToInt(Edit1.Text);     // кол-во строк
  m:=StrToInt(Edit2.Text);     //  кол-во столбцов
  SetLength(a,n,m);            // параметры массива
  for i:=0 to n-1 do           // счетчик строк
  for j:=0 to m-1 do           // счетчик столбцов
  a[i,j]:=Random(2001)-1000;   // присвоение случайного числа от -1000 до 1000
 
  with StringGrid1 do          // позволяет каждый раз не обращаться к имени компонента
  begin
    RowCount:=n+1;             // кол-во строк в таблице
    ColCount:=m+1;             // кол-во столбцов в таблице
 
    for j:=1 to RowCount do    // цикл для вывода номеров строк
    Cells[0,j]:=InttoStr(j);   // в первом столбце
 
    for i:=1 to ColCount do    // цикл для вывода номеров столбцов
    Cells[i,0]:=IntToStr(i);   // в первой строке
 
    for i:=1 to n do           //  циклы для вывода элементов
    for j:=1 to m do           //  массива в таблицу
    Cells[j,i]:=IntToStr(a[i-1,j-1]);
   end;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var
  i,j,k,n1: integer;
begin
  //Вставка первой строки после каждой чётной строки
  //Посчитаем, сколько строк будем вставлять и увеличим размерность массива
  n1:=(n Div 2)+n;
  SetLength(a,n1,m);        // Новый размер массива
  For i:=n-1 DownTo 2 Do    // Будем двигаться от конца к началу массива
  If (i Mod 2)=0 Then       // Только если строка чётная если считать с 0
  Begin                     // (вставляем перед нечётными считая с 1)
    //Сдвинем на одну строку все строки, начиная с этой
    For j:=n1-2 DownTo i Do // сдвигаем начиная с последней строки
    For k:=0 To m-1 Do
    a[j+1,k]:=a[j,k];
    //Запишем первую строку в место вставки
    For k:=0 To m-1 Do
    a[i,k]:=a[1,k];
  End;
 
  n:=n1;
  //Запишем массив в StringGrid
  with StringGrid1 do          // позволяет каждый раз не обращаться к имени компонента
  begin
    RowCount:=n+1;             // новое кол-во строк в таблице
 
    for j:=1 to RowCount do    // цикл для вывода номеров строк
    Cells[0,j]:=InttoStr(j);   // в первом столбце
 
    for i:=1 to n do           //  циклы для вывода элементов
    for j:=1 to m do           //  массива в таблицу
    Cells[j,i]:=IntToStr(a[i-1,j-1]);
   end;
end;
Добавлено через 3 часа 28 минут
ап ап ап
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.04.2014, 19:47
Ответы с готовыми решениями:

Текстовые файлы: в первую строку вставить первую гласную из второй строки, после каждой согласной в первой
1-в первую строку вставить первую гласную из второй строки, после каждой согласной в первой (строки записаны в файле, туда же и сохранить) ...

Вставить первую строку после строки, в которой находится первый встреченный минимальный элемент
Помогите,пожалуйста,решить задачу!( Использовать подпрограммы (ввода, вывода, обрабатывающей части). Дан массив целых чисел А, где...

Вставить после всех строк, содержащих максимальный по модулю элемент, первую строку
дан двумерный массив размером n*m и заполненный случайным образом: 1 задача)вставить после всех строк, содержащих максимальный по модулю...

1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
 Аватар для bormant
7816 / 4635 / 2837
Регистрация: 22.11.2013
Сообщений: 13,158
Записей в блоге: 1
01.04.2014, 21:05
После нечетной строки чего? Файла?
Pascal
1
2
3
4
5
6
7
8
9
10
11
var
  t: text; s1, s: string; b: boolean;
begin
  Assign(input,'input.txt'); Reset(input);
  ReadLn(s1); WriteLn(s1); b:=false;
  repeat
    b:=not b;
    if b then WriteLn(s1);
    ReadLn(s); WriteLn(s);
  until eof;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2014, 21:05
Помогаю со студенческими работами здесь

Вставить в строку после каждой цифры заданную последовательность символов
Введите строку. преобразуйте строку таким образом, что после каждой цифры стояли "!!!". вывести преобразованную строку.

Дан символ C и строки S, S0. После каждого вхождения символа C в строку S вставить строку S0
Дан символ C и строки S, S0. После каждого вхождения символа C в строку S вставить строку S0.

Найти сумму элементов каждой четной строки матрицы и произведение элементов каждой нечетной
В матрице D(10,15) найти сумму элементов каждой четной строки и произведение элементов каждой нечетной строки. Из полученных...

Вставить после строки с номером p данной матрицы новую строку
Помогите пожалуйста с задачкой, очень нужно... Дана действительная матрица размером n на n+1, действительные числа a1...an+1,...

Дан текстовый файл. Вставить в начало файла его последнюю строку, а в конец первую строку.
Помогите решить задание, заранее спасибо. Дан текстовый файл. Вставить в начало файла его последнюю строку, а в конец первую строку.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru