Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include "func.h"
- int main() {
- float a, b, c, d, e;
- int task;
- struct Circle cir;
- vector<vector<float> > arr;
- arr.resize(3);
- for (int i = 0; i < 3; i++) {
- arr[i].resize(3);
- for (int j = 0; j < 3; j++) {
- arr[i][j] = i + j;
- }
- }
- scanf("%f %f %f %f %f %f %f\n", &a, &b, &c, &d, &cir.x, &cir.y, &e);
- scanf("%d\n", &task);
- if (task == 1) {
- IntPartOfNumber1(&a);
- ChangeNumberSign1(&b);
- CircleShift1(&cir, &c, &d);
- //MatrixMultiplication1(&arr, e);
- printf("Через указатели:\nЦелая часть: %.2f\n", a);
- printf("Замена знака: %.2f\n", b);
- printf("Сдвиг на вектор: %.2f %.2f \n", cir.x, cir.y);
- printf("Через ссылку\n");
- } else {
- IntPartOfNumber2(a);
- ChangeNumberSign2(b);
- CircleShift2(cir, c, d);
- MatrixMultiplication2(arr, e);
- printf("Целая часть: %.2f\n", a);
- printf("Замена знака: %.2f\n", b);
- printf("Сдвиг на вектор: %.2f %.2f \n", cir.x, cir.y);
- printf("Умножение матрицы: \n");
- for (int i = 0; i < 3; i++) {
- for (int j = 0; j < 3; j++) {
- printf("%2.f ", arr[i][j]);
- }
- printf("\n");
- }
- }
- /*printf("Умножение на число:\n");
- for (int i=0; i<3; i++){
- for (int j=0; j<3; j++){
- printf("%.2f ", arr[i][j]);
- }
- printf("\n");
- }*/
- return 0;
- }
- #include "func.h"
- void IntPartOfNumber1(float *a) {
- if (*a >= 0)
- *a = floor(*a);
- else *a = ceil(*a);
- };
- void IntPartOfNumber2(float& aa) {
- if (aa >= 0)
- aa = floor(aa);
- else aa= ceil(aa);
- };
- void ChangeNumberSign1(float *b) {
- float t;
- t = *b;
- t = t * (-1.0);
- *b = t;
- }
- void ChangeNumberSign2(float& bb) {
- float t;
- t = bb;
- t = t * (-1.0);
- bb = t;
- }
- void CircleShift1(Circle *cir, float *c, float *d) {
- cir->x = cir->x + *c;
- cir->y = cir->y + *d;
- }
- void CircleShift2(Circle &cir, float &cc, float &dd) {
- cir.x = cir.x + cc;
- cir.y = cir.y + dd;
- }
- /*void MatrixMultiplication1(vector<vector<float> >* arr, float e) {
- for (int i=0; i<3; i++){
- for (int j=0; j<3; j++){
- *arr[i][j] *= e;
- }
- }
- }*/
- void MatrixMultiplication2(vector<vector<float> >&arr, float e) {
- for (int i=0; i<3; i++){
- for (int j=0; j<3; j++){
- arr[i][j] *= e;
- }
- }
- }
- #ifndef PR1_FUNC_H
- #define PR1_FUNC_H
- #include <cmath>
- #include <vector>
- using namespace std;
- struct Circle {
- float x;
- float y;
- };
- void IntPartOfNumber1(float *a);
- void IntPartOfNumber2(float& aa);
- void ChangeNumberSign1(float *b);
- void ChangeNumberSign2(float& bb);
- void CircleShift1(Circle *cir, float *c, float *d);
- void CircleShift2(Circle &cir, float &cc, float &dd);
- void MatrixMultiplication1(vector<vector<float> >* arr, float e);
- void MatrixMultiplication2(vector<vector<float> > &arr, float e);
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement