Вопрос № 173765: Здравствуйте уважаемые эксперты! Прошу помощи у тех кто разбирается как в Си так и в Си++. Мне нужно перевести код с С++ на Си (чтобы скомпилировать в Turbo C). Сколько не пытался сам перевести, все никак не хочет компилироваться. Ниже задание и ...
Вопрос № 173773: здравствуйте, помогите пожалуйста, чуток додумать программу не могу: надо составить массив А из 2n, затем из него создать два массива В и С по n элементов. Составлять так: выбираются два близкие по значению числа, меньшее в массив В большее в масс...
Вопрос № 173775: Здравствуйте! Уважаемые эксперты, необходима ваша помощь в реализации вот такой задачи: числовой ребус: перемножение двух любых (до5 знака ) чисел. Вместо каких-то чисел символ звездочка КАК РЕализовать??? ПРИМЕР: 4*58 *(умножить) ...
Вопрос № 173765:
Здравствуйте уважаемые эксперты! Прошу помощи у тех кто разбирается как в Си так и в Си++. Мне нужно перевести код с С++ на Си (чтобы скомпилировать в Turbo C). Сколько не пытался сам перевести, все никак не хочет компилироваться. Ниже задание и готовое решение на "borland c++ builder 6". Буду ОЧЕНЬ рад если удастся это сделать и скажу Большооое спасибо :).
Задача. 1. Построить хэш-таблицу методом линейных проб для слов заданного текста. Текст находится в некотором файле (примерно
200 слов). Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении. 2. Построить хэш-таблицу методом квадратичных проб для слов заданного текста. Файл с текстом должен быть тот же, что и п.1. Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
Отвечает Ashotn, Х Заблокирован :
Здравствуйте, Slayder. Кроме потоков, о которых говорил первый эксперт, в С есть и другие отличия от С++. У компиляторов обычно есть опция - компилировать на С, поэтому можете проверить свою программу таким образом. * в С++ можно задавать значения по умолчанию * в С++ появились inline функции, в Си роль которых играли макросы * в С++ появился спецификатор const (в Си константы определялись директивой define) * в С++ появились операторы new/delete * в С++ появились
шаблоны * в С++ появились пространства имен * в С++ комментарии другие :D * в С++ появились ссылки
объявление переменных только в начале функции.. конструкции типа for(int i=0... не допускаются У вас есть такое for (unsigned int i=0; i<strlen(s); i++) надо заменить на int i=0; for (int i=0; i<strlen(s); i++) Хотя в современной версии С это допускается. Нельзя объявлять перменные не в начале функции. Опять-т
аки сейчас это можно. Зависит от того, насколько старый компилятор. В С не было ключевого слова const. Сейчас есть.
Ответ отправил: Ashotn, Х Заблокирован
Ответ отправлен: 28.10.2009, 10:38
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 255950
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 173773:
здравствуйте, помогите пожалуйста, чуток додумать программу не могу: надо составить массив А из 2n, затем из него создать два массива В и С по n элементов. Составлять так: выбираются два близкие по значению числа, меньшее в массив В большее в массив А (выдает только два самых близких числа, не знаю как дальше )
Отвечает amnick, 4-й класс :
Здравствуйте, Ишмаков Рустем Ильшатович. Иначе говоря, требуется неявно отсортировать массив и поместить четные (нумерация с 0) элементы в массив B, а нечетные — в массив C. Программа в приложении. Пример прогона:
Ответ отправил: amnick, 4-й класс
Ответ отправлен: 27.10.2009, 22:38
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 255935
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает Ashotn, Х Заблокирован :
Здравствуйте, Ишмаков Рустем Ильшатович. Программа написана при условии, что если есть числа одинаковой близости, то какие брать, неважно. После того, как найдены близкие элементы, они удаляются из вектора. Ваш массив при этом остается, если он нужен. После этого ищется близкое значение уже среди оставшихся. Когда остаются 2 элемента, они сразу же идут в два массива. Программа оптимизирована по скорости, поэтому в векторе сначала обменивается член с последним, потом стирается последний. Дело в том,
что из вектора удалять долго, а последний элемент удаляется быстро.
Ответ отправил: Ashotn, Х Заблокирован
Ответ отправлен: 28.10.2009, 13:10
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 255954
на номер 1151 (Россия) |
Еще номера »
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 173775:
Здравствуйте! Уважаемые эксперты, необходима ваша помощь в реализации вот такой задачи: числовой ребус: перемножение двух любых (до5 знака ) чисел. Вместо каких-то чисел символ звездочка КАК РЕализовать??? ПРИМЕР: 4*58 *(умножить) 564* = * 6275*78