Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

28.12.2008, 15:17
|
|
Новичок
Регистрация: 23.11.2008
Сообщений: 1
Провел на форуме: 6057
Репутация:
0
|
|
Помогите пожалуйста с задачами на MASM32, срочно, о цене договоримся.
ICQ: 358705314
Задачи:
1) Дана последовательность целых чисел a1,a2,.....an. Выяснить, какое число встретитьсятся раньше - положительное или отрицательное.
2) Дана последовательность действительных чисел a1,a2....an. Выяснить, будет ли она возрастающей.
Здесь, как я понимаю идет работа с сопроцессором.
3)В целочисленной последовательности есть нулевые элементы. Создать массив из номеров этих элементов.
Комментарии к задачам: заполнение массива чисел возможно реализовать и на C+. НО сами операции нахождения положит и отриц. в первой лабе, и определение возрастающей последовательности должно быть на языке MASM, в третьей задачи аналогично. Т.е. возможно реализовать лабу на С+ с ассемблерными вставками.
|
|
|

29.12.2008, 19:34
|
|
Новичок
Регистрация: 08.02.2008
Сообщений: 19
Провел на форуме: 63941
Репутация:
0
|
|
Помогите с заданием по С++
Дан вещественный массив длины N. Разработать программу, которая сортирует массив так, что все его положительные числа находятся в начале, все отрицательные в конце, причем сохраняется исходный порядок следования элементов в соответствующих группах.
Как отсортировать по знаку что нужно использовать?
|
|
|

29.12.2008, 19:46
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
выборолчная шейкер сортировка ...
Код:
float A[N];
float temp;
int i,j;
do {
for(i=0,flag=0;i<N-1;i++)
if(A[i]<0 && A[i+1]>0)
{
temp=A[i];
A[i]=A[i+1];
A[i+1]=temp;
flag=1;
}
for(i=N-1;i>1;i--)
if(A[i]>0 && A[i-1]<0)
{
temp=A[i];
A[i]=A[i-1];
A[i-1]=temp;
flag=1;
}
}while(flag==0);
НЕ ПРОВЕРЯЛ бил прямо тут!
|
|
|

30.12.2008, 13:39
|
|
Участник форума
Регистрация: 19.05.2007
Сообщений: 281
Провел на форуме: 2823587
Репутация:
106
|
|
Delimiter
Так динамический массив определять нельзя, если это был он.
При комп будет что то подобное
Код:
error C2133: 'A' : unknown size
так можно сделать если выше.
или уж через new
Код:
float* A = new float[N];
Последний раз редактировалось St0nX; 30.12.2008 в 13:42..
|
|
|

30.12.2008, 16:51
|
|
Новичок
Регистрация: 08.02.2008
Сообщений: 19
Провел на форуме: 63941
Репутация:
0
|
|
Помогите пожалуйста!!!На С++
Разработать функцию, которая выбирает из произвольного числа заданных последовательностей чисел последовательность с максимальным средним значением. Показать варианты вызова функции.
Последний раз редактировалось HencH_MaN; 30.12.2008 в 16:53..
|
|
|

30.12.2008, 21:42
|
|
Новичок
Регистрация: 09.11.2008
Сообщений: 15
Провел на форуме: 59870
Репутация:
16
|
|
Сообщение от HencH_MaN
Помогите с заданием по С++
Дан вещественный массив длины N. Разработать программу, которая сортирует массив так, что все его положительные числа находятся в начале, все отрицательные в конце, причем сохраняется исходный порядок следования элементов в соответствующих группах.
Как отсортировать по знаку что нужно использовать?
Данный способ основан на использовании двух дополнительных матриц - одна хранит положительные значения из входного массива, а вторая отрицательные. При данном способе можно было бы обойтись и без входного массива, но в ТВОЕМ задании сказано... Короче вот:
Код:
# include <cstdio>
# include <cstdlib>
# include <iostream>
using namespace std;
int main(){
cout<<"Введите количество элементов в матрице: ";
int n=1; //переменная хранящая количество элементов в марице
cin>>n;
double mas1[n];//главный массив
double masOtr[n];//массив для хранения отрицательных значений
double masPol[n];//массив для хранения положительных значений
int pol=0,otr=0;//переменные для хранения количества положительных и отрицательных элементов
for (int i=0;i<n;i++){//начало цикла заполняющего массивы
cout<<"Вводится элемент №"<<i<<" ";
cin>>mas1[i];//заполняем основной массив
if (mas1[i]<0) {masOtr[otr]=mas1[i];otr++;} else {masPol[pol]=mas1[i];pol++;}; //выбираем положительные и отрицательные числа
}; //конец цикла заполняющего массивы
cout<<"\nСодержание матрицы до изменения\n";
for (int i=0;i<n;i++){
cout<<mas1[i]<<endl; //выводим содержание массива до сортировки
}
otr=0;
for (int i=0;i<n;i++){//начало сортировки массива
if (i<pol) {mas1[i]=masPol[i];} else {mas1[i]=masOtr[otr];otr++;}; //собственно сортировка массива
//отрицательные числа сортируются после всех
}//конец сортировки массива
cout<<"\nСодержание матрицы после фильтрации\n";
for (int i=0;i<n;i++){
cout<<mas1[i]<<endl; //вывод содержания массива после сортировки
}
system ("pause");//пауза для того чтобы посмотреть результат
return 0;
}
P.S.
Обращаюсь к знающим античатовцам: мои познания в C++ весьма скудны и поэтому прошу тех кто знает посмотреть на данный код и оптимизировать его и/или предложить более рациональный способ (мне самому уже интересны варианты решения данной задачи).
|
|
|

04.01.2009, 23:55
|
|
Познающий
Регистрация: 30.12.2007
Сообщений: 52
Провел на форуме: 375217
Репутация:
2
|
|
Дорогие античатовцы, я учу С++ и мне задают лабораторки с задачами по задачнику, автор - С. А. Абраамов. Я бы не сказал что я непонимаю в програмировании, но в етих задачах очень трудно понять что от програмиста хотят :-) Так вот ктонибудь сталкивался с етим задачником?
Преподаватель молчит, говорит студент должен сам все находить и учить, вот например такая задача:
"Даны натуральные числа k, m, n, символы s1,...,sk,t1,...,tm, u1...,un. Получить по одному разу те символы, которые входят одновременно во все три последовательности"
И как такое решать ? :-)
|
|
|

05.01.2009, 00:56
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
Провел на форуме: 811764
Репутация:
119
|
|
WALKMAN, у тебя три массива. Сравниваешь элементы этих массивов между собой, например:
Код:
if(s[1] == t[5] && s[1] == u[2])
printf("Bingo!");

з.ы. А препод хороший, правильные вещи говорит 
|
|
|

05.01.2009, 01:38
|
|
Познающий
Регистрация: 16.07.2008
Сообщений: 82
Провел на форуме: 424387
Репутация:
142
|
|
del
Последний раз редактировалось _antony; 05.01.2009 в 02:09..
|
|
|

05.01.2009, 13:19
|
|
Познающий
Регистрация: 30.12.2007
Сообщений: 52
Провел на форуме: 375217
Репутация:
2
|
|
Сообщение от criz
WALKMAN, у тебя три массива. Сравниваешь элементы этих массивов между собой, например:
Код:
if(s[1] == t[5] && s[1] == u[2])
printf("Bingo!");

з.ы. А препод хороший, правильные вещи говорит 
Меня смущает сам вопрос: "получить по одному разу те символы, которые входят одновременно во все три последовательности." Сильно замысловатый, ну при этом я понял что есть три различных по длине символьных массива и требуеться сравнить между собою все их елементы, но что вывести в результате???
"получить по одному разу те символы, которые входят одновременно во все три последовательности." 
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|