C/C++ - [решено] Помогите решить задачу по С++

Ответить
Аватара пользователя
Titanium

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение Titanium »

это не я писал, я списывал с доски то, что написал преподаватель, а он писал именно так. Препод хотел типа как построить MFC без шаблона., просто чтобы окошко открылось
Аватара пользователя
Titanium

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение Titanium »

Код:

Код: Выделить всё

#include 
LONG WINAPI WndProc(HWND, UINT, WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,
                   HINSTANCE hPrevInstance,
                   LPSTR     lpCmdLine,
                   int       nCmdShow)
{
    HWND hwnd;
    MSG msg;
    WNDCLASS w;
    memset(&w,0,sizeof(WNDCLASS));
    w.style = CS_HREDRAW | CS_VREDRAW;
    w.lpfnWndProc = WndProc;
    w.hInstance = hInstance;
    w.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    w.lpszClassName = "My Class";
    RegisterClass(&w);
    hwnd = CreateWindow("My Class", "My title", WS_OVERLAPPEDWINDOW,
        300, 200, 200, 180, NULL, NULL, hInstance, NULL);
    ShowWindow(hwnd,nCmdShow);
    UpdateWindow(hwnd);
    while(GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return msg.wParam;
}
LONG WINAPI WndProc(HWND hwnd, UINT Message, WPARAM wparam, LPARAM lparam)
{
    switch (Message){
    case WM_DESTROY: 
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd, Message, wparam, lparam);
    }
    return 0;
}
Аватара пользователя
Titanium

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение Titanium »

Цитата keksik:



кто знает как это решить?)
Разное - Уголок Ленивого Программиста




Я знаю! Изображение
Цитата keksik:



я не просил решать, я просил подсказки
Разное - Уголок Ленивого Программиста




Не просили.

Примеры решались? Матрицы рисовались? Пальчиком последовательности перебирались?

Не можешь решить теоретически, решай практически! Потом общий случай получишь.
Аватара пользователя
ferget

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение ferget »

Код:

Код: Выделить всё

#include <math.h>
#include <conio.h>
#include <iostream.h>
#define f(x)(exp( x ) + 2*pow(x,2) - 30)
double F_X(double);  // ???????? ??????? ?? ?????;
double PARABL_METHOD(double, double, double); // ??????? ??? ?????????? ????????
main()
{
	double MIN_VAL = 0.0;			 // ????????? ?????
	double MAX_VAL = 0.0;			 // ???????? ?????
	double ESP = 0.0, MINIMUM = 0.0; // ????????? ????????, ???????
	cout << "Vvedite MIN_VAL: ";
	cin >> MIN_VAL;
	cout << "Vvedite MAX_VAL: ";
	cin >> MAX_VAL;
	cout << "Vvedite ESP: ";
	cin >> ESP;
	MINIMUM = PARABL_METHOD(MIN_VAL, MAX_VAL, ESP);
	cout << "Minimum: " << MINIMUM << endl;
	getch();
	return 0;
}
double PARABL_METHOD(double X0, double H, double ESP)
{
	// ????????? ??????????????? ?????
	double X1 = 0.0; 
	double X2 = 0.0; 
	double XN = 0.0; 
	// ????????? ??????????????? ??????????
	double Q = 0.0, A = 0.0, B = 0.0, C = 0.0, D = 0.0, Z = 0.0;
	int k = 0;
	X1 = X0 + H;	 // ????????????? ?????? ?????
	X2 = X0 + (2*H); // ????????????? ?????? ?????
	// ????????? ???????? ???????? ????????? ?????? ???????? ??????? ???????
	do
	{
		Q = (X0-X1)/(X1-X2);
		A = (((Q*F_X(X0))-((Q*(1+Q))*F_X(X1)) )+(Q*Q*F_X(X2)));
		B = (((2*Q+1)*F_X(X0))-((1+Q)*(1+Q)*F_X(X1)))+Q*Q*F_X(X2);
		C = (1+Q)*F_X(X0);
		D = sqrt(B*B-(4*A*C));
		if (abs(B+D) > abs(B-D))
			Z=B+D;
		else
			Z=B-D;
		XN = X0 - (((X0-X1)*2*C)/Z);
		F_X(XN);
		// ?????????, ???????? ?? ?? ????????? ????????
		if (abs(F_X(XN) < ESP))
			k=10000;
		// ?????? ????? ???????? ??????
		X2 = X1;
		X1 = X0;
		X0 = XN;
		// ??????????? ???????
		k = k+1;
	} while(k <= 10000); // ???????????? ??????????? ?????
	return XN;
}
// ????????? ???????? ??????? ? ??????
double F_X(double x)
{
	return f(x);
}

можно ли как нибудь упростить данный листинг?
Аватара пользователя
lxa85

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение lxa85 »

Вопросы те же :

где собственные размышления?

Какие заданы ограничения?

По решению:

имеет смысл посмотреть на предыдущую работу с массивами, и подумать над применением уже известных методов, для решения поставленной задачи.
Аватара пользователя
zena

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение zena »

Помогите пожалуйста с этой задачкой:

Дана строка содержащая слова. Вывести на экран слово, являющееся первым в алфавитном порядке.
Аватара пользователя
lxa85

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение lxa85 »

Вопросы те же :

где собственные размышления?

Какие заданы ограничения?

По решению:

имеет смысл посмотреть на предыдущую работу с массивами, и подумать над применением уже известных методов, для решения поставленной задачи.
Аватара пользователя
SPD-PrAlex

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение SPD-PrAlex »

Помогите пожалуйста составить программу на C++



Проводится перепись населения. На улице N-домов (N - известно заранее и задается константой).

Число квартир в домах может различаться; это значение вводится с клавиатуры в переменную m для каждого дома. Число жильцов каждой квартиры вводят с клавиатуры.

Сколько всего людей проживает на этой улице?



P.S. Решение производится на C++ со вложенными циклами
Аватара пользователя
lxa85

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение lxa85 »

Ха. Есть мысль красивее, но о ней потом. Изображение

Связана с массивами, поиском в массиве, условием одинаковости строк.

Перебрать за 4с массив в 1500 элементов - крайне просто.


Цитата Prof:



потом искать следующим образом a[i-w] (a[i+w]), где a- определённый элемент массива. Если совпадения есть- удаляем, в конце выводим массиыв что остался.
C/C++ - [решено] Помогите решить задачу по С++




Идея не понятна. Как осуществляется поиск? Почему при совпадении мы что-то удаляем?

----

Строки должны быть одинаковыми. Дайте определение "одинаковым строкам", полное, развернутое. Это значительно облегчит решение задачи.
Аватара пользователя
Prof

Re: C/C++ - [решено] Помогите решить задачу по С++

Сообщение Prof »

Условие:

Имеем две строки. Из каждой строки разрешается удалять символы, но количество удаленных символов, идущих подряд, не должна превышать W. Задание- удалив минимально возможное количество символов, сделать строки одинаковыми (символы разного регистра считать одинаковыми).

Входящие данные:

Входящий файл содержит в первой строке число W (1
Ответить

Вернуться в «Программирование и базы данных»