Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2012, 20:48   #1
rusl31
 
Регистрация: 09.01.2012
Сообщений: 4
Вопрос Одномерный массив С++

Помогите решить задачку в Win32 API

В одномерном массиве, состоящем из n вещественных элементов вычислить:
1) максимальный элемент массива;
2) сумму элементов массива, расположенных до последнего положительного элемента.
Сжать массив,удалив из него все элементы, модуль которых находится в интервале [a, b]. Освободившиеся в конце массива элементы заполнить нулями.

Мой код(нерабочий):
Код:
#include <windows.h>
#include <stdio.h>
#include <time.h>
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument,int nCmdShow)
{
const int n = 10;
char Str[500];
int max=0, s=0, k=0;
float mass[n];
for(int i = 0; i < n; i++)
{
mass[i]=(float)rand()/RAND_MAX;
k+=sprintf(Str+k, "a(%d) = %d\n", i, mass[i]);
}
 
for(int i = 0; i < n; i++)
if(mass[i]>mass[max])
max=i;
 
for(int i = n-1; mass[i] < 0; i--)
s = s + mass[i];
 
sprintf(Str+k, "Максимальный элемент равен %d\nСумма равна %d", max, s);
MessageBox(0, Str, "Результат", MB_OK);
 
return 0;
}
rusl31 вне форума Ответить с цитированием
Старый 09.01.2012, 21:57   #2
MooNDeaR
В стагнации
Участник клуба
 
Аватар для MooNDeaR
 
Регистрация: 29.07.2011
Сообщений: 1,303
По умолчанию

Я в Win API не силен (да и нахрена он здесь вообще сдался? ), но например вообще ничего не понял чего хотел автор, когда писал свой код.
Например:
Код:
k+=sprintf(Str+k, "a(%d) = %d\n", i, mass[i]);
Я наверное еще не дорос до таких строк.
Код:
mass[i]=(float)rand()/RAND_MAX;
Всё что могу предположить - массив заполнится элементами 0.0 и 1.0. Причем вероятней всего 0.0.(Хотя, если подумать, то неплохо бы сначала srand(time(NULL)) заюзать)
Код:
for(int i = n-1; mass[i] < 0; i--)
s = s + mass[i];
В задаче, насколько я помню не оговаривалось, что считать надо с конца. Хотя гибкость ума здесь конечно тоже прикольно проявилась.

ну а теперь по теме.

2 задачи тут решены, но то, что перед ними, конечно требует поправок. Если мне помнится, то неплохо бы подключить <stdlib.h>, где лежит ГПСЧ.
Потом объяснить мне что значит:
Код:
for(int i = 0; i < n; i++)
{
mass[i]=(float)rand()/RAND_MAX;
k+=sprintf(Str+k, "a(%d) = %d\n", i, mass[i]);
}
Потому как я вообще понять не могу что имелось ввиду.

Рандомно нужно заполнять так в пределах (а,b):
Код:
...
x = rand() % (b - a) + b
...
E-mail: pashaworking@gmail.com | ICQ: 479914426 | Skype: moondearr
Понять, чего от тебя требует заказчик – это уже половина всей работы, а иногда и полностью выполненное задание.
MooNDeaR вне форума Ответить с цитированием
Старый 09.01.2012, 22:07   #3
rusl31
 
Регистрация: 09.01.2012
Сообщений: 4
По умолчанию

Извеняюсь, код не мой, написал мне его один одногруппник, так что ответить ничего не могу). Неплохо бы чтоб кто-нибудь с нуля написал решение хотябы первых двух пунктов..
rusl31 вне форума Ответить с цитированием
Старый 10.01.2012, 00:16   #4
Xeonc
Форумчанин
 
Регистрация: 20.10.2010
Сообщений: 143
По умолчанию

Выполню за 15-20 долларов(в зависимости от сроков), если заинтересованы - велкам в icq
451 -870-7(три)6. Выполняю работы на заказ, гарант честности - ВМ аттестат с 60+ БЛ без претензий
Xeonc вне форума Ответить с цитированием
Старый 10.01.2012, 00:36   #5
rusl31
 
Регистрация: 09.01.2012
Сообщений: 4
По умолчанию

Какие гарантии что вы меня не кинете после оплаты?
rusl31 вне форума Ответить с цитированием
Старый 10.01.2012, 00:41   #6
Xeonc
Форумчанин
 
Регистрация: 20.10.2010
Сообщений: 143
По умолчанию

Напишите в icq, я вам опишу схему работы\оплаты исключающую кидалово. Ну и бизнес левел в вебмани 60+, персональный аттестат и отсутствие претензий - так же дополнительная гарантия
451 -870-7(три)6. Выполняю работы на заказ, гарант честности - ВМ аттестат с 60+ БЛ без претензий
Xeonc вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17
Массив (одномерный) RUSSTUDENT Помощь студентам 2 11.10.2010 10:24
Одномерный массив , двухмерный массив Woxx Паскаль, Turbo Pascal, PascalABC.NET 0 10.09.2010 09:28
Одномерный массив. Q basic - Построить новый массив из элементов исходного ,которые больше P. Marishkaa Помощь студентам 2 12.01.2010 16:54
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40