Форум программистов, компьютерный форум CyberForum.ru

Сравнение тхт фаилов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблон, использующий при конкретизации шаблон (наподобие vector<vector<int>> ) http://www.cyberforum.ru/cpp-beginners/thread1008732.html
#include <iostream> using namespace std; template <typename T> class Array { T *data; public: Array(); Array(int n) {
C++ Вывести на экран значения тех эле-ментов, лежащих выше главной диагонали, которые больше всех элементов, лежащих ниже главной диагонали А кто-нибудь может помочь еще с этим: Дан вещественный массив А. Вывести на экран значения тех эле-ментов, лежащих выше главной диагонали, которые больше всех элементов, лежащих ниже главной диагонали. Пробовал создавал дополнительный массив записывал в него элементы которые выше главной диагонали, обнулял первоначальный массив выше главной диагонали и саму главную диагональ, а потом сравнивал... http://www.cyberforum.ru/cpp-beginners/thread1008711.html
C++ Создание нового проекта
Здравствуйте. Установил MVS 2012, начал создавать проект - Консольное приложение win 32....когда в последнем окошке ставлю галочку "Пустой проект" и нажимаю готово то слева в панеле создается просто папка с названием проекта и больше ничего нет а должно быть еще 4 папки - Файлы исходного кода, Внешние зависимости, Заголовочные файлы и Файлы ресурсов... Притом когда создаю файл cpp и пишу код то...
Динамический массив с сортировкой, С++ C++
Здравствуйте! Есть задание: написать динамический массив, заполненный случайными числами, размер которого задаётся переменной. Выполнить сортировку элементов главной диагонали массива по возрастанию. В массиве должна быть дополнительная функция, к которой идет обращение в main. На экран должен выводиться первоначальный массив и отсортированный массив. В данный момент застрял на...
C++ Вывести на экран значение и номер члена последовательности, меньшего 0,1 http://www.cyberforum.ru/cpp-beginners/thread1008683.html
Дана последовательность: . Составить программу c использованием цикла while, выводящую на экран значение и номер члена последовательности, меньшего 0,1. Тест: n=10, p(n)=0,0977. Использовать цикл while.
C++ Напишите программу которая задействует функцию puts, но не включает в программе никаких объявлений? это как? подробнее

Показать сообщение отдельно
sipsmail
Сообщений: n/a
15.11.2013, 16:18     Сравнение тхт фаилов
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
64
65
66
67
68
69
70
71
72
73
74
75
type 
starray=array[1..15] of string;
var
i:integer;
m:char; 
a:starray;
sl:text;
{Алгоритм бинарного поиска}
procedure b (s:starray);
var
n,k,c,i:integer; 
st:string; 
t:text;
begin
assign(t,'test.txt');
reset(t);
while not eof(t) do
begin
i:=1;
readln(t, st);
n:=1; k:=15; c:=(n+k) div 2;
{Алгоритм сравнения строк, чтобы находилась первая строка, округление в меньшую сторону и в большую для нахождения последней строки}
while (st<>s[c]) and (c>n)and (c<k)do
begin
i:=i+1;
if s[c]>st then
begin
k:=c;
c:=(n+k) div 2;
end
else
begin
n:=c;
c:=(n+k) div 2 + (n+k) mod 2;
end;
end;
if st=s[c]
then writeln (st,' строка найдена количество сравнений: ', i)
else writeln (st,' строка не найдена количество сравнений: ', i);
end;
end;
{Алгоритм поиска перебором}
procedure p (s:starray);
var
i:integer;
t:text;
st:string;
begin
assign (t,'test.txt');
reset(t);
while not eof(t) do
begin
readln(t, st);
i:=1;
while (i<15) and (st<>s[i]) do
i:=i+1;
if st=s[i]
then writeln (st,' строка найдена количество сравнений: ', i)
else writeln (st,' строка не найдена количество сравнений: ', i);
end;
end;
{Основная программа}
begin
writeln ('Выберите способ поиска, "B" - бинарный поиск, "P" - поиск перебором');
assign(sl,'sorted_list.txt');
reset(sl);
readln(m);
for i:=1 to 15 do
readln(sl, a[i]);
if m='P'
then
p (a)
else 
b (a);
end.
Выше написан код на паскале , нужно переписать на Си (желательно с одинаковым алгаритмом).
Задание: Массив длины 15 заполнен строками, упорядоченными по алфавиту без повторов: список зарегистрированных посетителей сайта, поступивших абитуриентов, названий книг и т.п. (можно загружать в массив готовый список из отдельного текстового файла, например sorted_list.txt)
Во втором текстовом файле (test.txt) содержится перемешанный набор строк с повторениями, в том числе все строки, записанные в массив, а также новые строки.
Считывая по одной строке из файла test.txt, нужно выполнить поиск каждой строки в массиве, по результатам которого вывести на экран номер ее позиции в массиве и количество ее сравнений с содержимым ячеек массива, произведенных в ходе поиска.
Реализовать два метода поиска строк в массиве: поиск перебором, бинарный поиск. Пользователь должен иметь возможность выбора метода.
В выводе построить график зависимости количества сравнений строки с содержимым ячеек массива от номера ее позиции в массиве для каждого метода. Подсчитать и привести в выводе среднее число сравнений по всем строкам для каждого метода.

P.S. я первокурсник , желательно без замудренных вещей... хочется не просто здать , а разобраться
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru