Программирование на VBA. Организация разветвляющегося вычислительного процесса. Составить программу вычисления корней квадратного уравнения х1=?, х2=?.
selectSQL = [NSString stringWithFormat: @"select text, question.sort, name from Question, main where main.key=question.key and var=\"%@\"", selectVar];
else
selectSQL = [NSString stringWithFormat: @"select text, question.sort from Question, main where main.key=question.key and name=\"%@\" and var=\"%@\"", selectYear, selectVar];
Доброго времени суток! Для начала немного поработаем над системой неравенств.
Дана система:
произведем несколько манипуляций с числами чтобы выявить абсолютные величины:
опираясь на абсолютные величины мы смело можем сказать что справедливы все "y" и "x" значения которые удовлетворяют двум неравенствам (отсюдого она и система). Можно канечно пошаманить и решить систему до конца указав области значений обоих переменных, но мы этого делать не будем, иначе для чего нам компьютер с потенциально огромной вычислительной мощностью? Правильно! Поэтому мы заставим его решать нашу систему неравенств ;)
программа будет написана на языке C++!
#include <iostream>
// определяем коды, которые покажут нам результат работы функции. #define CODE_INCASE 1 #define CODE_ONLINE 2 #define CODE_OUTRANGE 0 #define CODE_ERROR -1
struct vector2 { int x,y; };
unsigned char check_point(vector2 & point) { if ((point.x < 2*point.y) && (point.y < 5-point.x^2)) //определяем принадлежность { return CODE_INCASE; // является исключительно вложенным и не пересекает границы } else if( ((point.x = 2*point.y) && (point.y <= 5-point.x^2)) || ((point.x <= 2*point.y) && (point.y = 5-point.x^2)) ) { return CODE_ONLINE; // пересекает границы частично или полностью } else { return CODE_OUTRANGE; // не принадлежит } return CODE_ERROR; // код ошибки (в случае взбоя алгоритма определения значений) }
void main() { vector2 point1 = {-8, 12}; //тут мы задаем координату в виде простой линейной структуры. std::cout << "{" << point1.x << "," << point1.y << "}, code " << check_point(point1) << std::endl; //выводим на экран код обработчика.
NSString *sqlPath = [[NSBundle mainBundle] pathForResource:DB_BaseName ofType:@"sqlite"];
FMDatabase *myDB = [[FMDatabase alloc] initWithPath:sqlPath];
[myDB open];
// subgroupPicArray = [[NSMutableArray alloc] init];
a = selectYear;
b = selectVar;
if([selectYear isEqualToString:@""])
selectSQL = [NSString stringWithFormat: @"select text, question.sort, name from Question, main where main.key=question.key and var=\"%@\"", selectVar];
else
selectSQL = [NSString stringWithFormat: @"select text, question.sort from Question, main where main.key=question.key and name=\"%@\" and var=\"%@\"", selectYear, selectVar];
FMResultSet *results = [myDB executeQuery:selectSQL];
while([results next]){
if([[results stringForColumn:@"Text"] isEqualToString:@""]){
myHTML = [NSString stringWithFormat: @"%@",selectVar,[results stringForColumn:@"sort"]];
// Добавление картинок в тело письма
NSString *TestIMG = [results stringForColumn:@"sort"];
if (![TestIMG isEqual: @""]){
TestIMG =[NSString stringWithFormat: @"%@.jpg",TestIMG];
// TestIMG = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:TestIMG ofType:@"jpg"]];
NSData *imageData = ([UIImage imageNamed: TestIMG],1);
[mc addAttachmentData:imageData mimeType:@"" fileName:TestIMG];
}
} else
// Формирование текста страницы просмотра
myHTML = [NSString stringWithFormat: @"%@
%@
Для начала немного поработаем над системой неравенств.
Дана система:
произведем несколько манипуляций с числами чтобы выявить абсолютные величины:
опираясь на абсолютные величины мы смело можем сказать что справедливы все "y" и "x" значения которые удовлетворяют двум неравенствам (отсюдого она и система). Можно канечно пошаманить и решить систему до конца указав области значений обоих переменных, но мы этого делать не будем, иначе для чего нам компьютер с потенциально огромной вычислительной мощностью? Правильно! Поэтому мы заставим его решать нашу систему неравенств ;)
программа будет написана на языке C++!
#include <iostream>
// определяем коды, которые покажут нам результат работы функции.
#define CODE_INCASE 1
#define CODE_ONLINE 2
#define CODE_OUTRANGE 0
#define CODE_ERROR -1
struct vector2
{
int x,y;
};
unsigned char check_point(vector2 & point)
{
if ((point.x < 2*point.y) && (point.y < 5-point.x^2)) //определяем принадлежность
{
return CODE_INCASE; // является исключительно вложенным и не пересекает границы
}
else if( ((point.x = 2*point.y) && (point.y <= 5-point.x^2)) || ((point.x <= 2*point.y) && (point.y = 5-point.x^2)) )
{
return CODE_ONLINE; // пересекает границы частично или полностью
}
else
{
return CODE_OUTRANGE; // не принадлежит
}
return CODE_ERROR; // код ошибки (в случае взбоя алгоритма определения значений)
}
void main()
{
vector2 point1 = {-8, 12}; //тут мы задаем координату в виде простой линейной структуры.
std::cout << "{" << point1.x << "," << point1.y << "}, code " << check_point(point1) << std::endl; //выводим на экран код обработчика.
}
Удачи ;)