Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.69/16: Рейтинг темы: голосов - 16, средняя оценка - 4.69
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107

Черезстрочное слияние

30.09.2009, 21:53. Показов 3828. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Появилось вот такое задание по C++:
Написать программу на языке C++ чересстрочного слияния (т.е. первая строка в выходном файле - это первая строка из первого файла, вторая строка в выходном файле - это первая строка из второго файла, третья строка в выходном файле - вторая строка из первого файла и т.д.) двух текстовых файлов с удалением в каждой строке слов после которых стоит любой знак препинания.

Алгоритм программы:
C++
1
2
3
4
5
6
                           \\здесь описание всяких переменных 
void main() {}        \\основная программа
void s1() {}           \\процедура, открывающая 1 и 2 файл на чтение с диска
vois s2() {}           \\процедура, создающая третий файл и модифицирующая его (копирование строк)
void s3() {}           \\процедура, которая выполняет удаление (после знаков препинания)
void s4() {}           \\процедура, закрывающая все файлы
Подскажите, пожалуйста, правильно выбран алгоритм реализации данной программы...
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.09.2009, 21:53
Ответы с готовыми решениями:

Слияние массивов
Получить массив С(k), упорядоченный по возрастанию, путем слияния массивов A(n) и B(m), упорядоченных перед этим по возрастанию, где k = n...

Слияние строк
Разработать программу для упрощения работы с путем (Path) к файлу в файловой системе. Привязку к реальному диску делать необязательно....

Бинарное слияние
Не получается реализовать алгоритм. Хелп плз. http://img246.imageshack.us/img246/6600/binslimf5.jpg Вот что у меня получается. ...

33
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
09.10.2009, 15:00
Студворк — интернет-сервис помощи студентам
Код C++
1
2
3
4
5
6
7
while (c=fgetc(f1)) { fputc(c,o); if (c==EOF) fputc('\n',o); if (c=='\n') break;
};

Как окончательный вариант предлагаю такое решение.
Разберись в нём и протестируй.
Раз за разом мы будем в цикле считывать символы и их печатать, ни о чем не боеспокоясь.
Пока нам не встретится EOF или \n

Допустим, нам встретился EOF
То есть последней строкой в файле была такая строка :
asdfgh"EOF"

asdfgh нами считано. И надо добавить в конес строки \n (хотя его там нет, надо самим пихать.)

Вот пихаем. Пишем
Код C++
1
2
3
if (c==EOF) fputc('\n',o);

И всё на этом. Теперь мы уже НИКОГДА не зайдём в это цикл, согласись?
А если считаем знак \n, то просто тупо запишем его в файл и всё, по команде break выходим на хрен из цикла.
И так для обоих файлов.

Но тут есть одно.
Если будет, допустим, так

asdfg\nEOF
Значит, произойдёт так:
Считается строка, потом \n. Вроде всё нормально. Теперь бы нам выйти их цикла, ан нет. Прога опять зайдёт в цикл, сразу же наткнётся на EOF и прибавит \n, который нам даром не нужен. Получается в конце два \n

Значит что?
Значит, если в конце EOF, то пусть символ \n прописывается не безусловно, а только в том случае, если предыдущий прописанный сивол НЕ БЫЛ \n

То есть вот сюда
C++
1
2
if (c==EOF// Вот сюда)
   fputc('\n',o);
Надо написать такое условие, словами если:
Если предыдущий считанный символ не был \n
Вот подумай, как это реализоватью.
1
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
09.10.2009, 15:25  [ТС]
C++
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
#pragma hdrstop
#include <tchar.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#pragma argsused
int main()
{
 FILE *f1=fopen("D:\\work\\file_1.txt","r");
 FILE *f2=fopen("D:\\work\\file_2.txt","r");
 FILE *o=fopen("D:\\work\\B.txt ","w+");
 char c,c2;
 while ((c!=EOF) || (c2!=EOF)){
  while (c=fgetc(f1)) {
  fputc(c,o);
  if (c==EOF)
   fputc('\n',o);
  if (c=='\n')
   break;
 };
   while (c2=fgetc(f2)) {
  fputc(c2,o);
  if (c2==EOF)
   fputc('\n',o);
  if (c2=='\n')
   break;
 };
 }
 fclose(f1);
 fclose(f2);
 fclose(o);
    return 0;
}
блин что-то я уже совсем перестал понимать что делается...
по теории если правильно понял о чем ты работает...
на практике без проблем дочитывает до конца первого файла, но как только конец первого файла был достигнут... вниз пошли буквы 'я' причем в огромном кол-ве... выходной файлик получился аж на 10 метров...
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
09.10.2009, 16:25
Я тебе сказал протестировать. А не паниковать.
Уж мог бы разобраться-то хоть немного!
Извини, конечно.
Пиши так.

C++
1
2
3
((c=fgetc(f1))!= EOF)
...
((c2=fgetc(f2))!= EOF)
Разберись, СПРОСИ, что непонятно и протестируй на многих-многих вариантах.

Попробуй взять а правило выводить данные в консоль сперва, а потом уже в файл Всегда видно, портачишь или нет. Но это так, на будующее.
1
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
09.10.2009, 16:56  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
Я тебе сказал протестировать. А не паниковать.
Уж мог бы разобраться-то хоть немного!
Извини, конечно.
Пиши так.

C++
1
2
3
((c=fgetc(f1))!= EOF)
...
((c2=fgetc(f2))!= EOF)
Разберись, СПРОСИ, что непонятно и протестируй на многих-многих вариантах.

Попробуй взять а правило выводить данные в консоль сперва, а потом уже в файл Всегда видно, портачишь или нет. Но это так, на будующее.
Попробовал потестить на разных вариантах, чтобы первый файл был больше второго, второй больше первого... но проблемка сохранилась, где строки закончились меньшего файла на ней печатается дальше идущая строка большего файла...
file_1.txt
C++
1
2
3
4
5
6
First codex was used for accounting, but 
with the development of parchment in the III century BC. e., gradually began to displace the papyri. 
This is already happening in the Christian world. The reasons for the adoption of the manuscript as the main type of books 
several: it is economical because you can use both sides of the paper, it is easy to hide; 
It was convenient and accessible. Perhaps the Christian writers used the original purpose, that they were not 
similar to the pagan texts, which are usually written in the form of scrolls.
file_2.txt
C++
1
2
3
4
5
6
7
8
9
10
11
At the beginning of XIV century in Western Europe appeared woodcutting (it was developed 
long before the East). In the matrix of woodcuts depicting Pages 
cut from a piece of wood. It can be dipped in ink and 
used to make multiple copies of a page. Books, as well as playing 
cards and religious pictures, began to produce woodcuts. But the creation of the book was 
laborious process, since each page had to do his carving. Besides,
Above you can view the video clip, which was added by our users. You can view it directly
 on our site, or download it to your computer and transfer it to the usual format. 
Avi (DivX) with the help of the program YouTube Downloader. You can download it here. Use 
it to convert video to normal video file, which you can enjoy with friends at any moment, 
even if you're somewhere on a picnic at the weekend.
B.txt
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
First codex was used for accounting, but 
At the beginning of XIV century in Western Europe appeared woodcutting (it was developed 
with the development of parchment in the III century BC. e., gradually began to displace the papyri. 
long before the East). In the matrix of woodcuts depicting Pages 
This is already happening in the Christian world. The reasons for the adoption of the manuscript as the main type of books 
cut from a piece of wood. It can be dipped in ink and 
several: it is economical because you can use both sides of the paper, it is easy to hide; 
used to make multiple copies of a page. Books, as well as playing 
It was convenient and accessible. Perhaps the Christian writers used the original purpose, that they were not 
cards and religious pictures, began to produce woodcuts. But the creation of the book was 
similar to the pagan texts, which are usually written in the form of scrolls.laborious process, since each page had to do his carving. Besides,
Above you can view the video clip, which was added by our users. You can view it directly
 on our site, or download it to your computer and transfer it to the usual format. 
Avi (DivX) with the help of the program YouTube Downloader. You can download it here. Use 
it to convert video to normal video file, which you can enjoy with friends at any moment, 
even if you're somewhere on a picnic at the weekend.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
09.10.2009, 17:36
Тогда семафор. Разбирайся.

C++
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
#pragma hdrstop
#include <tchar.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
//#pragma argsused
int main()
{
 FILE *f1=fopen("fail1.cc","r");
 FILE *f2=fopen("fail2.cc","r");
 FILE *o=fopen("fail4.cc ","w+");
 char c,c2;
 char semafor_1;
 char semafor_2;
 while ((c!=EOF) || (c2!=EOF)){
  while ((c=fgetc(f1))!= EOF) {
   fputc(c,o);
    semafor_1= c;
    if (c=='\n')
     break;
  };
  if (c==EOF&& semafor_1!= '\n') {
   fputc('\n',o);
  }
  while ((c2=fgetc(f2))!= EOF) {
   fputc(c2,o);
   semafor_2= c2;
   if (c2=='\n')
    break;
  };
  if (c2==EOF&& semafor_2!= '\n') {
   fputc('\n',o);
  }
}
 fclose(f1);
 fclose(f2);
 fclose(o);
        return 0;
}
1
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
09.10.2009, 22:20  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
Тогда семафор. Разбирайся.

C++
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
#pragma hdrstop
#include <tchar.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
//#pragma argsused
int main()
{
 FILE *f1=fopen("fail1.cc","r");
 FILE *f2=fopen("fail2.cc","r");
 FILE *o=fopen("fail4.cc ","w+");
 char c,c2;
 char semafor_1;
 char semafor_2;
 while ((c!=EOF) || (c2!=EOF)){
  while ((c=fgetc(f1))!= EOF) {
   fputc(c,o);
    semafor_1= c;
    if (c=='\n')
     break;
  };
  if (c==EOF&& semafor_1!= '\n') {
   fputc('\n',o);
  }
  while ((c2=fgetc(f2))!= EOF) {
   fputc(c2,o);
   semafor_2= c2;
   if (c2=='\n')
    break;
  };
  if (c2==EOF&& semafor_2!= '\n') {
   fputc('\n',o);
  }
}
 fclose(f1);
 fclose(f2);
 fclose(o);
        return 0;
}
Но и с переменной-семафором работает все равно не так
Исходники те же, теперь в месте конца первого и продолжения второго все ОК, но далее опять появляются пустые строки
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
First codex was used for accounting, but 
At the beginning of XIV century in Western Europe appeared woodcutting (it was developed 
with the development of parchment in the III century BC. e., gradually began to displace the papyri. 
long before the East). In the matrix of woodcuts depicting Pages 
This is already happening in the Christian world. The reasons for the adoption of the manuscript as the main type of books 
cut from a piece of wood. It can be dipped in ink and 
several: it is economical because you can use both sides of the paper, it is easy to hide; 
used to make multiple copies of a page. Books, as well as playing 
It was convenient and accessible. Perhaps the Christian writers used the original purpose, that they were not 
cards and religious pictures, began to produce woodcuts. But the creation of the book was 
similar to the pagan texts, which are usually written in the form of scrolls.
laborious process, since each page had to do his carving. Besides,
 
Above you can view the video clip, which was added by our users. You can view it directly
 
 on our site, or download it to your computer and transfer it to the usual format. 
 
Avi (DivX) with the help of the program YouTube Downloader. You can download it here. Use 
 
it to convert video to normal video file, which you can enjoy with friends at any moment, 
 
even if you're somewhere on a picnic at the weekend.
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
09.10.2009, 23:11
Кошмар.
Я совсем забыл, что семафор на то и семафор, чтобы его изменять! Моя вина.
Вот вариант. Должен сканать. Если сканает, мы его в четырёх местах украсим.

C++
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
#pragma hdrstop
#include <tchar.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
//#pragma argsused
int main()
{
 FILE *f1=fopen("fail1.cc","r");
 FILE *f2=fopen("fail2.cc","r");
 FILE *o=fopen("fail4.cc ","w+");
 char c,c2;
 char semafor_1;
 char semafor_2;
 while ((c!=EOF) || (c2!=EOF)){
  while ((c=fgetc(f1))!= EOF) {
   fputc(c,o);
    semafor_1= c;
    if (c=='\n')
     break;
  };
  if (c==EOF&& semafor_1!= '\n') {
   fputc('\n',o);
   
   //Вот из-за этой строки всё было.Ну, ни хрена, тепрь ни под каким предлогом прога 
   //сюда  не  зайдёт и символ конца строки не напечатается лишний раз.
   semafor_1= '\n';
  }
  while ((c2=fgetc(f2))!= EOF) {
   fputc(c2,o);
   semafor_2= c2;
   if (c2=='\n')
    break;
  };
  if (c2==EOF&& semafor_2!= '\n') {
   fputc('\n',o);
   semafor_2= '\n';
  }
}
 fclose(f1);
 fclose(f2);
 fclose(o);
        return 0;
}
1
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
09.10.2009, 23:43  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
Кошмар.
Я совсем забыл, что семафор на то и семафор, чтобы его изменять! Моя вина.
Вот вариант. Должен сканать. Если сканает, мы его в четырёх местах украсим.

C++
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
#pragma hdrstop
#include <tchar.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
//#pragma argsused
int main()
{
 FILE *f1=fopen("fail1.cc","r");
 FILE *f2=fopen("fail2.cc","r");
 FILE *o=fopen("fail4.cc ","w+");
 char c,c2;
 char semafor_1;
 char semafor_2;
 while ((c!=EOF) || (c2!=EOF)){
  while ((c=fgetc(f1))!= EOF) {
   fputc(c,o);
    semafor_1= c;
    if (c=='\n')
     break;
  };
  if (c==EOF&& semafor_1!= '\n') {
   fputc('\n',o);
   
   //Вот из-за этой строки всё было.Ну, ни хрена, тепрь ни под каким предлогом прога 
   //сюда  не  зайдёт и символ конца строки не напечатается лишний раз.
   semafor_1= '\n';
  }
  while ((c2=fgetc(f2))!= EOF) {
   fputc(c2,o);
   semafor_2= c2;
   if (c2=='\n')
    break;
  };
  if (c2==EOF&& semafor_2!= '\n') {
   fputc('\n',o);
   semafor_2= '\n';
  }
}
 fclose(f1);
 fclose(f2);
 fclose(o);
        return 0;
}
офигеть, спасибо огромное...

Цитата Сообщение от kravam Посмотреть сообщение
Если сканает, мы его в четырёх местах украсим.
Что же здесь украшать?
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
10.10.2009, 00:00
А мы объединим просто, чтобы строек меньше было.
Вместо 17-ой и 18-ой напиши так:
C++
1
semafor_1=fputc(c,o);
Вместо 23-ей и 24-ой так
C++
1
semafor_1= fputc('\n',o);
Так лаконичнее. Не хер плодить лишние сущности. И так код громоздкий получился.
Надо препода задобрить.
И вот втором цикле аналогичные строчки объедини.
1
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
10.10.2009, 13:29  [ТС]
kravam, спасибо за помощь...
Что можешь посоветовать дальше?? Попытаться соединить вот эту часть с твоей прогой, и в ней уже со знаками препинания исправлять, или вообще заново начать делать??
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
10.10.2009, 13:53
Лучше заново.
0
1 / 1 / 0
Регистрация: 11.03.2009
Сообщений: 107
10.10.2009, 19:59  [ТС]
вот программка она читает из файла, и выводит на экран, и выделяет слова если найден знак препинания...
C++
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
#include <iostream.h>
#include <fstream.h>
#include <string.h>
 
void main()
{
   int h;
   char stroka[50] ;
   ifstream file("D:\\work\\B.txt") ;
   while(!file.eof()) {
      file >> stroka ;
      cout << stroka<< endl ;
      h=strlen(stroka);
      if( (stroka[strlen(stroka) - 1 ] == '.') ||
          (stroka[strlen(stroka) - 1 ] == ',') ||
          (stroka[strlen(stroka) - 1 ] == ';') ||
          (stroka[strlen(stroka) - 1 ] == ':') ||
          (stroka[strlen(stroka) - 1 ] == '-') ||
          (stroka[strlen(stroka) - 1 ] == '!') ||
          (stroka[strlen(stroka) - 1 ] == '?'))
          cout << "Naidena . or , or ; or : or - or ! or ?" << endl;
 
  }
  file.close();
}
Как можно сделать, чтобы эти найденные обозначенные слова удалялись??
И потом происходила запись в файл??

Практиковался на вот таком файлике
C++
1
2
3
4
At the beginning of XIV century in Western Europe appeared woodcutting (it was developed 
First codex was used for accounting, but 
long before the East). In the matrix of woodcuts depicting Pages 
with the development of parchment in the III century BC. e., gradually began to displace the papyri.
0
Эксперт по математике/физике
 Аватар для Том Ардер
4219 / 3417 / 396
Регистрация: 15.06.2009
Сообщений: 5,817
10.10.2009, 22:38
Не утерпел...
Всё это - хорошая иллюстрация того, что происходит, когда начинают кодировать без проекта и внятного алгоритма.
Увязли в мелочах, а решения нет

А задача простая. Разрабатываем проект сверху вниз.

Файлы - вход1, вход2, выход
Цикл Пока вход непуст
{
ОбработатьСтроку(вход1, выход)
ОбработатьСтроку(вход2, выход)
}

ОбработатьСтроку(вход, выход)
{
СтрокаИсточник = ЧитатьСтроку(вход)
СтрокаРезультат = ПреобразоватьСтроку(СтрокаИсточник)
ЗаписатьСтроку(выход, СтрокаРезультат)
}

ПреобразоватьСтроку(Источник)
{
Результат = ""
Цикл Пока Источник непуст
{
Слово = ЧитатьСлово(Источник)
Если Проверить(Слово)
{
Добавить(Результат, Слово)
}
}
}

ЧитатьСлово(Источник)
{
Пропустить пробелы
Читать символы до пробела или конца строки
}

bool Проверить(Слово)
{
результат = истина
Если
{
Последний символ(Слово) = знак препинания
результат = ложь
}
}

Добавить(Результат, Слово)
{
Если Результат непуст
дописать пробел
Дописать Слово
}
C++
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <string.h>
#include <iostream>
#include <fstream>
#include <iomanip>
#include <strstream>
 
using namespace std;
 
string  strPath("\\work\\");
string  strName1("file_1.txt");
string  strName2("file_2.txt");
string  strNameOut("fout.txt");
 
void ProcessLine(ifstream*, ofstream*);
void TransformLine(const char* pszSource, char* pszResult);
bool Check(char* pszWord);
void Add(char* pszResult, char* pszWord);
 
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
        string  strIn1(strPath);
        string  strIn2(strPath);
        string  strOut(strPath);
 
        strIn1 += strName1;
        strIn2 += strName2;
        strOut += strNameOut;
        
        ifstream if1(strIn1.c_str());
        ifstream if2(strIn2.c_str());
        ofstream of(strOut.c_str());
 
        if( !if1.fail() && !if2.fail() && !of.fail() )
        {
            while( !if1.eof() || !if2.eof() )
            {
                ProcessLine( &if1, &of );
                ProcessLine( &if2, &of );
            }
        }
    }
 
    return 0;
}
 
void ProcessLine(ifstream* ifTxt, ofstream* ofTxt)
{
    if( !ifTxt->eof() )
    {
        char    szSource[MAX_PATH];
        char    szResult[MAX_PATH];
 
        ifTxt->getline(szSource, MAX_PATH);
 
        TransformLine( szSource, szResult );
 
        ofTxt->write(szResult, strlen(szResult));
    }
}
 
void TransformLine(const char* pszSource, char* pszResult)
{
    istrstream  istrSrc(pszSource);
 
    *pszResult = '\0';
 
    while( !istrSrc.eof() )
    {
        char    szWord[MAX_PATH];
        
        istrSrc >> szWord;
 
        if( Check(szWord) )
        {
            Add(pszResult, szWord);
        }
    }
    strcat(pszResult, "\n");
}
 
bool Check(char* pszWord)
{
    bool    bRes = true;
    char    punct[] = {'.', ',', ':', ';'};
    char    last = pszWord[strlen(pszWord) - 1];
 
    for( int j = 0; bRes && j < sizeof(punct)/sizeof(char); j++ )
    {
        bRes = (last != punct[j]);
    }
 
    return bRes;
}
 
void Add(char* pszResult, char* pszWord)
{
    if( strlen(pszResult) != 0 )
    {
        strcat(pszResult, " ");
    }
    strcat(pszResult, pszWord);
}
Вложения
Тип файла: zip merge.zip (13.3 Кб, 15 просмотров)
1
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,709
11.10.2009, 04:20
Вот чё я не люблю, так это когда мы, неумёхи чего-то там делаем, и у на чего-то вдруг получилось- приходит эдакий мэтр, давно вальяжно на нас смотрящий, и знающий ответ и говорит...

мэтр, а где ты раньше был, когда мы пурхались в самом начале?
а не пойти ли тебе куда подальше? Без тебя разберёмся.

Мне-то по фиг, я задачу всяко решу (и решил уже сто раз разными способами).

Я просто решаю её ВМЕСТЕ с автором.
Секёшь масть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.10.2009, 04:20

Слияние массивов
Задан массив A из N элементов и массив B из M элементов. Сформировать массив L из массивов A и B путем их слияния так, чтобы сначала...

Слияние массивов на с++
Добродень всем.задача такая:массив структур размера N(в моем случае 100).разбить на ленты.т.о получается 10 лент по 10 элементов в каждой...

слияние списков
помогите с написание программы!!! нужно написать программу которая объединяет два упорядоченных списка в один. Функция merge должна...

Слияние массивов
Есть задача: Описать функцию, которая выполнит слияние двух массивов одинаковой длины в третьем (элементы первого и второго массивов в нем...

Слияние деревьев
Сижу, мучаюсь, не могу понять что подразумевается в задании о слиянии деревьев. Подвесить вершину второго дерева к какому-нить листу 1-го?...


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

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru