Форум программистов CODEBY.NET Хостинг в Беларуси — Active Technologies

Разработка бизнес сайтов

Нужны клиенты? Тогда сюда быстрее...
X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )


> Решение лабораторных, контрольных и т.д. на С++, Помощь студентам и школьникам
European
Вставить ник
сообщение 4:12:2007, 09:55
Цитата Ответить 


Божественный
Иконка группы

Группа: Модеры
Сообщений: 2 041
Регистрация: 4:09:2006
Из: Минск
Пользователь №: 6 316



Репутация:   32  


Уважаемые студенты, школьники и прочие лица, страждущие помощи!
Вероятнее всего Вам очень срочно нужна помощь и у Вас совершенно нет времени читать правила форума. Я облегчу Ваши поиски и позволю себе процитировать очень важный пункт правил:
Цитата
2.6. При создании новой темы давайте ей осмысленное название. Оно должно отражать суть вашего вопроса или сообщения. За названия подобные "Памагите пажалуста", "Вася ответь", "У меня праблема" ваша тема будет сразу удалена, при повторных нарушениях вам будет запрещена возможность создания тем и посещения конференции.

Кроме того, grigsoft, один из модераторов нашего форума высказал очень правильную мысль в ветке ]]>Про Помогите, Спасите, Напишите - как задавать вопросы]]>:
Цитата
Никто не будет писать для вас программу - потому что чтобы написать даже самую простую, надо потратить минимум полчаса. Найдите друзей и знакомых, которые будут рады потратить на вас свое время. Не можете найти - сделайте пост в разделе Предложение работы.

Так вот, эта тема создана специального для того, чтобы Вы размещали свои просьбы здесь. Именно здесь и нигде больше. Все темы, содержащие крики о помощи будут закрываться, перемещаться в раздел "Предложения поработать" или удалятся в зависимости от настроения модератора smile.gif Надеюсь на понимание.

Однако, если Вы немного продвинулись в написании программы и хотите задать конкретный вопрос, то создайте тему с говорящим названием и Вам помогут.

Итак, тема открыта!

P.S. Данная тема, а также адекватная реакция модераторов согласована с администрацией. Так что просьба всех недовольных поберечь свои эмоции!

P.P.S. Внимание! Внимание!! ВНИМАНИЕ!!!
На нашем форуме есть ]]>ВЕТКА]]>, в которой Вы можете найти исполнителей для решения Ваших задач
Подняться вверх 
 
Сообщение #1
15 страниц V  « < 7 8 9 10 11 > »   
Новая тема 
Ответов (240 - 269)
tanikoff
Вставить ник
сообщение 18:05:2008, 16:56
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 18:05:2008
Из: Новосибирск
Пользователь №: 17 379



Репутация:   0  


Уважаемые! помогите пожалуйста... совсем ни с чем не успеваю=( да и фактически не понимаю СИ..
Нужна программка...
задание: Считать из текстового файла слова в односвязный список и затем удалить из него симметричные слова – палиндромы (например - ШАЛАШ) .Вывести элементы списка на экран до и после удаления палиндромов.
Буду рада любой помощи!
Подняться вверх 
 
Сообщение #241
salce
Вставить ник
сообщение 19:05:2008, 14:16
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 3
Регистрация: 10:04:2008
Пользователь №: 16 539



Репутация:   0  


Помогите пожалуйста исправить код программы на Си++:
Дана такая задача:
Задана система двусторонних дорог, где для любой пары городов есть соединяющий их путь. Найти город с минимальной суммой расстояний до остальных городов.

Текст программы:
CODE

#include <iostream>
#include <math.h>
using namespace std;
void main()
{int n,a,k,b,i=0,j=0,t=0;
int* m;
cout<<"vvedite kolichestvo gorodov:"<<"\n";
cin>>n;
m= new int[n,n];
for(int q=0;q<=n;q++)
{
for(int r=0;r<=n;r++)
m[q,r]=0;
}
cout<<"vvodite\n";
while((i>=0) && (j>=0) && (t>=0))
{
cin>>t;
if(t>0)
i=t;
else
break;
cin>>t;
if(t>0)
j=t;
else
break;
cin >> t;
if((i>0) && (j>0) && (t>0))
{
m[i,j]=t;
m[j,i]=t;
}
else
break;
}

for (i=0; i<=n; i++)
a=a+m[0,i];
for (i=1; i<=n; i++)
{
for (int j=0; j<=n; j++)
{
b=b+m[i,j];
}
if(b<a)
{
a=b;
k=i;
}
}
cout << " Gorod s minimalnoy summoy rasstoyaniy do ostalnix gorodov: " << k;
cout << endl;
}



Вот...только у меня это не работает, не знаю как исправить.
Надо: мы задаем сначала 1ое число - это первый город, 2ое число - это второй город, 3ее число - это расстояние между городами. Не обязательно что между всеми городами есть соединяющая их дорога (т.е. к примеру если у нас 3 города, то например есть путь от 1 ко 2 и от 2 к 3ему, а от первого к 3ему прямой дороги нет - она проходит только через город 2 ну и т.п.)
помогите кто чем может плииииз...
Подняться вверх 
 
Сообщение #242
gamecreator
Вставить ник
сообщение 19:05:2008, 17:25
Цитата Ответить 


Гуру
Иконка группы

Группа: Достойный программист
Сообщений: 316
Регистрация: 3:11:2007
Пользователь №: 13 517



Репутация:   1  


]]>http://ru.wikipedia.org/wiki/Алгоритм_Флойда_—_Уоршелла]]>
Подняться вверх 
 
Сообщение #243
cawry
Вставить ник
сообщение 21:05:2008, 08:11
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 21:05:2008
Пользователь №: 17 458



Репутация:   0  


Привет всем!!
Я студентка Радика, пишу вам в надежде на помощь! Скоро уже летоsmile.gif и близится сессия(. Я пытаюсь сдать все экзамены досрочно, потому что запланированны курсы на лето по повышению уровня говорения на английском, но все было бы замечательно если бы не программирование. Осталось досдать преподу две лабы..но я не сильна в программирование, точнее я его НЕ ЗНАЮ!. mellow.gif Вот и сражаемся с ним sad.gif Пожалуйста, оч оч сильно прошу вас...помогите!!!
Написать нужно программы на Visual C++:

1 прога
Задание
Составить программу сортировки вводимых с клавиатуры строк путем сорти¬ровки массива указателей на строки. Признак конца строки - символ, задаваемый поль¬зователем в диалоге. Прием строк завершается после ввода соответствующего символа, задаваемый пользователем в диалоге, или после ввода определенного задаваемого пользователем числа строк. Вид сортировки: В порядке возрастания кода первого символа.
Методические указания:
1. Каждая строка в соответствии с соглашениями языка C должна заканчиваться символом '\0'..
2. Память под хранение строки должна выделяться динамически. Объем этой память должен в точности соответствовать длине строки. Для этого строка предварительно вводится в буферный массив, размерность которого больше, чем предполагаемый максимальный размер строки, например 256. Затем анализируется реальный размер введенной строки, выделяется память с помощью функций malloc или new и строка копируется в отведенное место с помощью функции strcopy.
3. Операции ввода строки и сортировки должны быть оформлены соответствующими функциями на языке С.

2 прога
Составить программу, считывающую существующий файл с диска, и выпол¬няющую обработку:удалить слова, содержащие заданный символ; терминала.
Результат работы помещается в новый файл (с фиксированным именем). Места изменений фиксируются программой и отобра¬жаются на экране.

ваша cawry rolleyes.gif
Подняться вверх 
 
Сообщение #244
ShawnDark
Вставить ник
сообщение 21:05:2008, 18:06
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 15
Регистрация: 24:12:2007
Пользователь №: 14 431



Репутация:   -1  


Заполнить матрицу ЛП, от левого верхнего угла по спирали: вниз - вправо - вверх - влево.
Скрин:


Помогите пожалуйста, кто знает, С++
Подняться вверх 
 
Сообщение #245
misterio
Вставить ник
сообщение 21:05:2008, 19:16
Цитата Ответить 


Продвинутый
Иконка группы

Группа: Новенький
Сообщений: 101
Регистрация: 31:08:2007
Из: Украина, Киев
Пользователь №: 12 558



Репутация:   1  


Если размерность матрицы = const, то самый "простой" способ, что- то типо :

int matrix[9][9];
...
for (i = 0; I<9; i++) {
     scanf("%d", &matrix[0][1]) // первый столбик вниз.
     }
for (i = 1; I<9; i++) {
     scanf("%d", &matrix[8][i] //нижняя строка.
     }
for (i = 8; i > -1; i--) {
             scanf("%d",&matrix[i][8]) // вверх по правому краю.



И так далее, только главное не ошибиться с арифметикой. Может где-то тут я просчитался но смысл впринципе понятен.

Сообщение отредактировал misterio - 21:05:2008, 19:26
Подняться вверх 
 
Сообщение #246
VIRS
Вставить ник
сообщение 22:05:2008, 08:36
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 22:05:2008
Пользователь №: 17 482



Репутация:   0  


Помогите пожалуйста!
Заданы 2 строки, состоящие из слов, разделенных пробелами.1) Приписать три символа второй строки к первой. 2)Поменять местами в измененной первой строке первое и последнее слово.
С 1 разобрался а вот 2 пункте ни как.
Помогите чем сможете!
Подняться вверх 
 
Сообщение #247
diden
Вставить ник
сообщение 23:05:2008, 15:55
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 22:05:2008
Пользователь №: 17 501



Репутация:   0  


Исходный текст записан на странице с числом символов в строке L.
Переписать его на страницу с числом символов в строке M.Слова не разрывать.
Считать, что текст помещается на странице целиком.
CODE

#include <iostream.h>
#include <conio.h>
void main()
{
int n,l,k,t,L,M,i,j;
cout<<"pa3Mep:";
cin>>n;

cout<<"M";
cin>>M;
cout<<"L";
cin>>L;

char **A,**B;
A=new char*[n];
for(i=0;i<L;i++)
A[i]=new char[L];
for(i=0;i<L;i++)
for(j=0;j<L;j++)
cin>>A[i][j];// это я массив ввожу

t=0;
for(i=0;A[i]!='0';i++)
for(j=0;A[j]!='0';j++)
t++;//вот тут у меня большие вопросы,так как этим циклом я хотел посчитать количество введенных символов в массив А

B=new char*[n];
for(i=0;i<n;i++)
B[i]=new char[M];
k=M%t;
l=t-k*M;
A[i][j]=B[k][l];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cout<<B[k][l];
}





я кое че сам написал но не знаю правильно ли,основное чего там нету это функции чтоб копировать слова без разрыва,помогите будьте добры rolleyes.gif

Сообщение отредактировал Morpheus - 4:06:2008, 10:19
Причина редактирования: теги кода
Подняться вверх 
 
Сообщение #248
ShawnDark
Вставить ник
сообщение 23:05:2008, 20:14
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 15
Регистрация: 24:12:2007
Пользователь №: 14 431



Репутация:   -1  


Пожалуйста помогите решить:
Составить программу, которая читает текстовый файл и выполняет такое преобразование
Цитата
В каждой строке поменять местами первое слово с последним, второе - с предпоследним и т.д.
Подняться вверх 
 
Сообщение #249
Ca1m
Вставить ник
сообщение 25:05:2008, 14:45
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 3
Регистрация: 18:12:2007
Пользователь №: 14 323



Репутация:   0  


Есть у кого код како-нить базы данных ? на любую тему ... условие:должна присутствовать запиь данных в файл, чтение данных из файла, сортировка данных.

у кого-то ведь были подобные лабы или курсачи ...


если есть готовый курсач можно договориться smile.gif
Подняться вверх 
 
Сообщение #250
Ram
Вставить ник
сообщение 25:05:2008, 20:06
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 25:05:2008
Пользователь №: 17 568



Репутация:   0  


Отболел почти два месяца, препод обрадовал(
Итак полный ноль, вдобавок задание графическое((
Сделать надо до завтра (т.е. 26 сделать, 27-сдача)

В MS Visual C++ задание:
"написать программу для отображения звезд. Количество звезд, их радиус, координаты и количество лучей вводятся пользователем. Цвет определяется случайным образом."

Помогите!

Сообщение отредактировал Ram - 26:05:2008, 08:16
Подняться вверх 
 
Сообщение #251
limonka
Вставить ник
сообщение 26:05:2008, 11:55
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 26:05:2008
Пользователь №: 17 593



Репутация:   0  


Задача: Известны экспериментальные данные. Нужно их считать в прогу из блокнота и проделать с ними разные операции. А ещё, если не трудно, помогите это всё сделать в диалоговых окнах... Заранее благодарна)
CODE

#include "stdafx.h"
#include "math.h"
#include "iostream.h"

double funcR (int n, double*x,double*y)
{
int i; double s1=0, s2=0, s4=0, s5=0, s6=0, Mx, My, R;
for(i=0; i<n-1; i++)
{
s1=s1+x[i]; s2=s2+y[i];Mx=s1/n;
My=s2/n; s4=s4+((x[i]-Mx)*(y[i]-My));
s5=s5+((x[i]-Mx)*(x[i]-Mx));
s6=s6+((y[i]-My)*(y[i]-My));
}
R=s4/(sqrt(s5*s6)); return®;
}

double funcA1 (int n, double*x, double*y)
{
int i; double s1=0, s2=0, s3=0, s7=0, A1;
for (i=0;i<n-1; i++)
{
s1=s1+x[i]; s2=s2+y[i]; s3=s3+y[i]*x[i]; s7=s7+x[i]*x[i];
}
A1=(n*s3-s2*s1)/(n*s7-s1*s1);
return (A1);
}

double funcA0 (int n, double*x, double*y, double A1)
{
int i; double s1=0, s2=0, A0;
for (i=0; i<n-1; i++)
{
s1=s1+x[i];
s2=s2+y[i];
}
A0=s2/n-A1*s1/n;
return (A0);
}
int main()
{
int n, i,k; double*X, *Y, F[20],a1,a0,r,f[10];
cout<<"kol-vo exp dannih="; cin>>n;
X=new double[n];
cout<<"vvedite momenti vremeni:\n";
for(i=0;i<n;i++) cin>>*(X+i);
Y=new double[n];
cout<<"vvedite zna4enia temperatur:\n";
for(i=0; i<n; i++) cin>> *(Y+i);
a1=funcA1(n,X,Y);
a0=funcA0(n,X,Y,a1);
r=funcR(n,X,Y);
cout<<"vvedite kol-vo momentov vremeni dlya vi4islenia zna4eniy ojid temperatur\n";
cin>>k;
cout<<"vvedide momenti vremeni dlya vi4islenia zna4eniy ojid. temperatur\n";
for(i=0;i<k;i++)
cin>>f[i];
cout<<"zna4enia ojid. temperatur\n";
for(i=0;i<k;i++)
{
F[i]=a0+a1*f[i];
cout<<"\n"<<F[i];
}
cout<<"koef-ti linii regressii\n"<<a0<<";"<<a1<<"\n";
cout<<"koef korrelyatsii:\n"<<r;
return(0);
}


Сообщение отредактировал Morpheus - 26:05:2008, 11:57
Причина редактирования: теги кода
Подняться вверх 
 
Сообщение #252
Medved
Вставить ник
сообщение 26:05:2008, 17:58
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 3
Регистрация: 20:04:2008
Пользователь №: 16 763



Репутация:   0  


ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ



Вариант 9.
Составить программу, моделирующую заполнение гибкого магнитного диска.
Общий объем памяти на диске 360 Кб. Файлы имеют произвольную длину от 18 байт до 32 Кб. В процессе работы файлы либо записываются на диск, либо удаляются с него. В начале работы файлы записываются подряд , друг за другом.
После удаления файла, на диске образовывается свободный участок памяти, и вновь записываемый файл записывается на этот участок, либо , если файл не вмещается на свободном участке, размещается после последнего записанного файла.
В случае, когда файл превосходит длину самого большого свободного участка выдается аварийное предупреждение.

Требование на запись или удаление файла происходит с командной строки, которая содержит имя файла , его длину в байтах, признак записи или удаления. Программа должна выдавать по запросу сведения о свободных и занятых участках памяти на диске.

Указание : следует создать список занятых и список свободных участков памяти на диске.


//если у кого есть какие нибудь похожие функции или примеры скиньте исходник,буду очень рад.Спасибо.
Подняться вверх 
 
Сообщение #253
Olek
Вставить ник
сообщение 26:05:2008, 21:20
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 26:05:2008
Из: Україна
Пользователь №: 17 606



Репутация:   0  


Помогите c решением на C++!!
1
В одномерном массиве из N элементов найти
а) макс. элемент
б) сумму элементов расположеных до последнего положительного элемента
Сжать массив, удалив из него элементы модуль кот находится в интервале [а; в]. Освободившиеся элементы заменить нулями.


2
Матрица А [м; м] действительных чисел. Подсчитать суму отрицат элементов. Полученым значением заменить элементы главной диагонали. Вывести преобразованую матрицу.

спасибо)

P.S. ICQ 222719253

Сообщение отредактировал Olek - 27:05:2008, 05:12
Подняться вверх 
 
Сообщение #254
DoublE
Вставить ник
сообщение 26:05:2008, 22:08
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 3
Регистрация: 29:04:2008
Пользователь №: 16 971



Репутация:   0  


Привет всем.
Опять я с той же проблемой... В очень срочном порядке (время поджимает) нужен код проги... Сколько ни пытался, никак не могу решить... Написать нужно на Си...

Вот напоминаю условие:
дано натуральное число m. Вставить между числами 1,2,3,4,5,6,7,8,9 записанными именно в том порядке, знаки +,- так, чтобы значением получившегося выражения было число m. Например если m=122, то подойдёт следующая расстановка знаков: 12+34-5-6+78+9. Если требуемая расстановка знаков невозможна, то сообщить об этом.

В общем, если кто поможет, то обязательно рассчитаюсь... Пишите на мыло... Буду очень признателен за помощь...
Подняться вверх 
 
Сообщение #255
kadver
Вставить ник
сообщение 27:05:2008, 09:59
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 4
Регистрация: 25:05:2008
Пользователь №: 17 556



Репутация:   0  


Задание такое: В первом двоичном файле находится информация о группе стран: название страны, столица, государственный язык, площадь, население (число жителей страны). Во втором двоичном файле содержится информация о той же группе стран: название страны, столица, население (число жителей столицы). Названия стран в файлах отсортировать по алфавиту. Вывести информацию о стране, в которой максимальное число жителей.
Подняться вверх 
 
Сообщение #256
Zdonol
Вставить ник
сообщение 28:05:2008, 11:07
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 2
Регистрация: 28:04:2008
Пользователь №: 16 929



Репутация:   0  


" РАБОТА СО СПИСКОМ "Помогите с этой задачкой...
Из пяти ошибок осталась дна, а в что тут не так даже не пойму...
CODE
include <stdio.h>
#include <stdlib.h>
struct liter {
char name [30];
char dr[10];
char proza[30];
struct liter *start;
struct liter *last;
struct liter *next;
struct liter *prior;
};
enter(),search(),save();
load(),menu_select(),mdelete();
{
for (;;)
{
switch (menu_select()) {
case 1: enter();
break;
case 2: search();
break;
case 3: save();
break;
case 4: load();
break;
case 5: exit();
}
}
return 0;
}
{
menu_select()
printf ("1. Vvod imeni\n");
printf ("2. Poisk\n");
printf ("3. Sohranit\n");
printf ("4. Zagryzit\n");
printf ("5. Vihod\n");
}
enter()
{
struct *dann;
for (;;) {
dann =(struct litera *) malloc (sizeof (struct (struct litera));
if (!info) {
printf ("\n Net svobodnoi pamati");
return;
}
inputs (" vvedite ima:", dann->name,30);
inputs (" vvedite droshdenia:", dann->dr,10);
inputs ("vvedite proizvedenia:", dann -> proza, 30);
}
}
search()
{
char name [50];
struct liter *dann;
printf ("vvedite ima:");
gets(name);
dann = dann(name);
if (!dann) printf(" Nety takova\n")
else display (dann);
}
save()
{
struct liter *info;
FILE *fp;
fp=fopen("mlist", "wb");
if (!fp) {
printf(" Nevozmoshno otkrit fail.\n");
exit(1);
}
printf(" Nevozmoshno sohranenie v faile\n");
info = start;
while(info) {
fwrite(info, sizeof (struct address), 1,fp);
info = info->next;
}
fclose(fp);
}
load()
{
struct liter *info;
FILE *fp;
fp=fopen ("mlist", "rb");
if (!fp) {
printf(" Nevozmoshno otkrit fail\n");
exit(1);
}
mdelete()
char s[80];
inputs (" vvedite ima: ",s,30);
info = find(s);
if (info) {
if (*start==info) {
*start=info->next;
if(*start) (*start)->prior = NULL;
else *last = NULL;
}
else {
info prior->next = info->next;
if(info!=*last)
info->next->prior = info->prior;
else
*last = info->prior;
}
free(info);
}
}
Причина редактирования: теги codebox
Подняться вверх 
 
Сообщение #257
Eagle
Вставить ник
сообщение 28:05:2008, 15:19
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 1
Регистрация: 28:05:2008
Пользователь №: 17 652



Репутация:   0  


ОЧЕНЬ СРОЧНО! Необходима платная помощь по разработке программы - парсера пакетов протокола SMB. Суть: собираем весь дамп tcpdump`ом в Linux, затем программой на Си (под Linux) вылавливаем пакеты SMB (это уже реализовано), затем разбираем команды SMB (все не нужно - только стандартные: операции с файлами / папками, авторизация - с выводом имен папок, файлов и пользователей). Проблема с парсингом самих команд. Буду возмездно благодарен за помощь.
eaglez@inbox.ru
99404330
Подняться вверх 
 
Сообщение #258
kadver
Вставить ник
сообщение 28:05:2008, 16:09
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 4
Регистрация: 25:05:2008
Пользователь №: 17 556



Репутация:   0  


CODE
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream.h>
#include <time.h>
#include <string.h>
struct F1
{
char nazv[10], st[10], yaz[10];
int pl,nasstr;
};
struct F2
{
char nazv[10], st[10];
int nasstol;
};
void main()
{
clrscr();
int vv,n=0;
FILE *in1, *in2;
in1=fopen("1.dat","a+b");
in2=fopen("2.dat", "a+b");
F1 a1;
F2 a2;
cout<<"Esche stranu?(1-da/0-net): ";
cin>>vv;
while(vv==1)
{
cout<<"Vvedite dannie stran:\n";
cout<<"Nazvanie: "; cin>>a1.nazv;
cout<<"Stolica: "; cin>>a1.st;
cout<<"Yazik: "; cin>>a1.yaz;
cout<<"Ploschad: "; cin>>a1.pl;
cout<<"Naselenie trani: "; cin>>a1.nasstr;
cout<<"Naselenie stolici: "; cin>>a2.nasstol;
strcpy(a2.nazv,a1.nazv);
strcpy(a2.st,a1.st);
n++;
fwrite(&a1, sizeof(a1), 1, in1);
fwrite(&a2, sizeof(a2), 1, in2);
do
{
cout<<"Esche stranu?(1-da/0-net): ";
cin>>vv;
}
while(vv!=1&&vv!=0);
}
int i;
F1 *str1=new F1 [n];
F2 *str2=new F2 [n];
for(i=0;i<n;i++)
{
fread(&str1[i], sizeof(str1[i]), 1, in1);
fread(&str2[i], sizeof(str2[i]), 1, in2);
}
F1 max;
for(i=0;i<n;i++)
if(str1[i].nasstr>str1[i+1].nasstr)
max=str1[i];
cout<<"\n"<<max.nazv;
cout<<"\n"<<max.st;
cout<<"\n"<<max.yaz;
cout<<"\n"<<max.pl;
cout<<"\n"<<max.nasstr;
fclose(in1);
fclose(in2);
getch();
}

Пожалуста помогите найти ошибку!!!!!

Сообщение отредактировал Morpheus - 4:06:2008, 06:13
Причина редактирования: теги кода
Подняться вверх 
 
Сообщение #259
kadver
Вставить ник
сообщение 28:05:2008, 19:40
Цитата Ответить 


Новенький
Иконка группы

Группа: Новенький
Сообщений: 4
Регистрация: 25:05:2008
Пользователь №: 17 556



Репутация:   0  


Обновленный код:
CODE
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream.h>
#include <time.h>
#include <string.h>
struct F1
{
char nazv[10], st[10], yaz[10];
int pl,nasstr;
};
struct F2
{
char nazv[10], st[10];
int nasstol;
};
void main()
{
clrscr();
int vv,n=0;
FILE *in1, *in2;
in1=fopen("1.dat","w+b");
in2=fopen("2.dat", "w+b");
F1 a1;
F2 a2;
cout<<"Esche stranu?(1-da/0-net): ";
cin>>vv;
while(vv==1)
{
cout<<"Vvedite dannie stran:\n";
cout<<"Nazvanie: "; cin>>a1.nazv;
cout<<"Stolica: "; cin>>a1.st;
cout<<"Yazik: "; cin>>a1.yaz;
cout<<"Ploschad: "; cin>>a1.pl;
cout<<"Naselenie strani: "; cin>>a1.nasstr;
cout<<"Naselenie stolici: "; cin>>a2.nasstol;
strcpy(a2.nazv,a1.nazv);
strcpy(a2.st,a1.st);
n++;
fwrite(&a1, sizeof(a1), 1, in1);
fwrite(&a2, sizeof(a2), 1, in2);
do
{
cout<<"Esche stranu?(1-da/0-net): ";
cin>>vv;
}
while(vv!=1&&vv!=0);
}
rewind(in1);
rewind(in2);
int i;
F1 *str1=new F1 [n];
F2 *str2=new F2 [n];
for(i=0;i<n;i++)
{
fread(&str1[i], sizeof(str1[i]), 1, in1);
fread(&str2[i], sizeof(str2[i]), 1, in2);
}
F1 max;
max=str1[0];
for(i=0;i<n;i++)
if(str1[i].nasstr>max.nasstr)
max=str1[i];
F1 tmp1;
F2 tmp2;
int j;
for(i=0;i<n-1;i++) //сортировка
for(j=0;j<n-i-1;j++) //первого
if(str1[j].nazv>str1[j+1].nazv) //массива
{ //
tmp1=str1[j]; //
str1[j]=str1[j+1] ; //
str1[j+1]=tmp1; //
} //
for(i=0;i<n-1;i++) //сортировка
for(j=0;j<n-i-1;j++) //второго
if(str2[j].nazv>str2[j+1].nazv) //массива
{ //
tmp2=str2[j]; //
str2[j]=str2[j+1] ; //
str2[j+1]=tmp2; //
} //
cout<<"\n"<<max.nazv;
cout<<"\n"<<max.st;
cout<<"\n"<<max.yaz;
cout<<"\n"<<max.pl;
cout<<"\n"<<max.nasstr;
fclose(in1);
fclose(in2);
getch();
}

Помогите дописать сортировку в файлах!!!! Сортировка уже написана но почемуто не работает!

Сообщение отредактировал Morpheus - 4:06:2008, 06:12
Причина редактирования: теги кода
Подняться вверх 
 
Сообщение #260
steal13