Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <math.h>
- #include <cstring>
- using namespace std;
- double norm(float *item, int size)
- {
- float result = 1;
- int i;
- //перемножаем всё в векторе
- for (i = 0; i < size; ++i)
- result = result * item[i];
- //расчленяем это квадратным корнем и возвращаем нафиг
- return sqrt(result);
- }
- int compare(int a, int b)
- {
- if (a == b) return 0;// дані рівні;
- else if (a > b) return 1; // перше більше другого;
- else return -1; //перше менше другого
- }
- int compare(char *a, char *b)
- {
- return strcmp(a, b); // юзаем готовую функцию, ни к чему велосепеды, все равно работает как по условию
- }
- int compare(float *a, float *b, int as, int bs)
- {
- float an, bn;
- //находим нормы
- an = norm(a, as);
- bn = norm(b, bs);
- //аналогично числам
- if (an == bn) return 0;
- else if (an > bn) return 1;
- else return -1;
- }
- int main()
- {
- int a, b; //числа
- char *sa = new char[512], *sb = new char[512]; //строки
- int vas, vab; //размеры векторов
- float *va, *vb; //векторы
- //вводим числа
- cout << "input a b: ";
- cin >> a >> b;
- //строки
- cout << "input first str: ";
- cin >> sa;
- cout << "input second str: ";
- cin >> sb;
- //векторы
- cout << "input size: ";
- cin >> vas;
- va = new float[vas];
- cout << "input vector: ";
- for (int i = 0; i < vas; i++)
- cin >> va[vas];
- cout << "input size: ";
- cin >> vab;
- vb = new float[vab];
- cout << "input vector: ";
- for (int i = 0; i < vab; i++)
- cin >> va[vab];
- //сравниваем и выводим результаты, функции вызываем прямо в выводе, найдешь где, я думаю
- cout << "compare integers - " << compare(a, b) << endl;
- cout << "compare strings - " << compare(sa, sb) << endl;
- cout << "compare vectors - " << compare(va, vb, vas, vab);
- cin.ignore();
- cin.get();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment