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

Сортировка Шелла для файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Последовательность и arctg http://www.cyberforum.ru/cpp-beginners/thread211122.html
Доброго времени суток. Прошу помощи с двумя задачами, очень нужно. 1) Даны целые числа a(i)...a(n). Известно, что a(i)>0 и что среди чисел есть хотя бы одно отрицательное число. Найти количество четных чисел, предшетсвующих отрицательному числу. 2)Не используя стандартные функции, вычислить с точностью до eps>0: y=arctgx=x-x^3/3+x^5/5+...+(-1)^n*x^2n+1/(2n+1) Модуль x меньше 1. Заранее...
C++ Количество слов Нужно подсчитать количество слов в каждом предложении. Помогите, пожалуйста http://www.cyberforum.ru/cpp-beginners/thread211114.html
C++ Перевод небольшой программки с Паскаля на С++
У меня не сильно складываются отношения с Паскалем))) Нужно перевести программку на С++. Помогите, пожалуйста, буду очень признателен. Заранее спасибо TYPE MAT=ARRAY OF REAL; VEC=ARRAY OF REAL; VAR I,K,M,N: INTEGER; E,L: REAL; A:MAT; X:VEC; PROCEDURE MATR (N:INTEGER; VAR X:VEC; VAR A:MAT); VAR I,J: INTEGER; BEGIN
C++ расписать каждую строчку что она значит и посмотрите правилоно ли написана программа..
1) include <stdio.h> int main int a,b,c,rez; printf("Vvedite a); scanf("%d",&a); printf("Vvedite b); scanf("%d",&b); printf("Vvedite c); scanf("%d",&c);
C++ Ошибка в коде http://www.cyberforum.ru/cpp-beginners/thread211057.html
Вот написал програмку для решения уравнений, но при компиляции выбивает ошибку, помогите исправить, когда уравнений было 5, то всё отлично работало, //Метод простой итерации решения СЛАУ #include <stdio.h> #include <conio.h> #include <math.h>
C++ ссылки всем добрый вечер.. помогите написать программу вычисления объема параллелограмма. после того как пользователь введет данные, необходимо определить на них ссылки и расчет производить с помощью ссылки подробнее

Показать сообщение отдельно
wir_wolf
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 11
24.12.2010, 22:45  [ТС]     Сортировка Шелла для файла
Я все по тому же поводу, нашел скрипт который создает и читает нужные мне файлы, но вот одного найти не могу.
Есть метод шела сортировка цыфр, но сортировка по тексту я так и не нашел

вот что у меня на данный момент есть
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
#include "stdafx.h"
#include <iostream> 
#include <stdlib.h>
#include <fstream>
using namespace std;
 
//==================Structure===============
struct Shop{
   char *Name;
   char *Marka;
   float Price;   
};
 
//=================Structure initialization===========
Shop init(){
    Shop sp;
    sp.Name=new char[256];
    sp.Marka= new char[256];
    return sp;
}
//======================================
Shop *Zapovnennia(int a)
{ 
 
Shop *Ima1=new Shop[a];
int q=0;
 
for(int i=0;i<a;i++){
q=rand()%60;
 
if((q)>60) Ima1[i].Name="Televizor";
if(q<=60 && q>=30) Ima1[i].Name="Magnitola";
if(q<30 && q>=0) Ima1[i].Name="DVD ";
 
q=rand()%100;
 
 
if((q)>75) Ima1[i].Marka="SONY ";
if(q<=75 && q>=50) Ima1[i].Marka="PHILIPS";
if(q<50 && q>25) Ima1[i].Marka="SAMSUNG";
if(q<=25 && q>=0) Ima1[i].Marka="SHARP ";
 
q=rand()%100;
 
Ima1[i].Price=q*100.2f;
 
 
}
return Ima1;
}
 
void Vuvid(Shop *Ima,int b)
{
for(int i=0;i<b;i++) cout<<i+1<<" "<<Ima[i].Name<<"\t"<<Ima[i].Marka<<"\t\t"<<Ima[i].Price<<"\n";
 
}
 
//=======================================
 
int main(){
//  printf('Введите имя файла в который будет сделана запись:');
//  printf('Текст');
    int n=5;
    Shop *Mag= new Shop[5];
    Mag=Zapovnennia(5);
    int size[5];
    char *file_name=new char [25];//------имя файла, в который сохраняем
    cin>>file_name;
        //Делаем запись структуры в файл
    ofstream out(file_name, ios::out|ios::app|ios::binary);
    
    for(int i=0;i<n;i++){
//      size[i]=sizeof(float)+strlen(Mag[i].Name)+strlen(Mag[i].Marka);
//      out.write((char *)&Mag[i] ,size[i]);
    }
    out.close();
    int SIZE=0;
    
    Shop *New=new Shop[n];
//  printf('/n Завершено');
             //=======считывание из файла==========
//  printf('Чтение структуры из файла' + file_name);
    cin>>file_name;
    ifstream in(file_name, ios::in|ios::binary);
    
    for(int i=0;i<n;i++){
        New[i]=init();
        char *buf=new char [size[i]];
        in.seekg(SIZE);
        in.read(buf,size[i]);
        SIZE+=size[i];
        New[i]= *((Shop *)buf);
        delete[] buf;
    }
    Vuvid(New,n);
    delete[] Mag;
    delete[] New;
    delete[] file_name;
    return 0;
    
}
Ну и еще загон с "printf"

Что скажите по поводу сортировки?
 
Текущее время: 22:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru