Текст программы на языке Си




Аннотация

 

Контрольная работа представлена пояснительной запиской объёмом 17 листов, 4 рисунка, с использованием литературных источников.

В контрольной работе представлена программа, написанная по средствам языка Си.

Для решения данного задания использовались:

функция форматированного ввода\вывода;

условный оператор if;

параметрический оператор for;

В работе получен положительный результат решения данного задания.

 


Содержание

 

Введение

. Блок-схема решения задачи

. Текст программы на языке Си

. Результаты тестирования программы

Заключение

Список использованных источников

 


Введение

 

В данной работе проходило знакомство со средой программирования языка Си.

Причина актуальности языка Си заключается в том, что синтаксические конструкции многих других современных языков программирования, появившихся позднее Си, очень сильно напоминают синтаксис языка Си. Здесь речь идет о таких языках, как Java, C#, PHP и др. Еще один любимый и используемый многими язык C++ получен из Си с добавлением к нему средств объектно-ориентированного программирования. Таким образом, изучение языка Си может оказаться одной из первых ступенек на пути к постижению искусства программирования. Освоив его, можно смело приступать к освоению перечисленных языков, уже имея в запасе многие необходимые знания.

Язык Си среднего уровня, сочетающий в себе как некоторые элементы высокоуровневых языков, так и низкоуровневые операции. В частности, он позволяет легко оперировать с байтами и битами, а также работать с памятью напрямую, используя указатели. Кроме того, язык Си легко переносится, другими словами, написанный под одну операционную систему код может быть откомпилирован в другой. Рассмотренные и прочие достоинства делают язык Си подходящим средством для разработки ряда приложений, например, компиляторов.

параметрический оператор программа язык си

 


Блок-схема решения задачи

 

 

 


Текст программы на языке Си

 

#include <stdio.h>

#include <conio.h>

#include <math.h>

#include <locale.h>

#include <vector>

#include <algorithm>namespace std;float pi_max = 3.14;float pi_min = -3.14;float h = 3.14 / 10;float fx(float & x)

{3 * cos(5 *x) + 2 * sin(x);

}bool Cmp(float &x, float &y)

{x > y;

}fy(float **matrix, int size_matrix, vector<float> & A, vector<float> &B)

{max_row = -1;sum = 0;(int i = 0; i < size_matrix; i++) {(int j = 0; j < size_matrix; j++) {[i][j] = pow(A[i], 3) + abs(A[j] - B[j]);

}

}

/* Тут подсчитываем сумму элементов и запоминаем столбец */(int i = 0; i < size_matrix; i++) {temp = 0;(int j = 0; j < size_matrix; j++) {+= matrix[j][i];

}(temp > sum){= temp;_row = i;

}

}max_row;

}void fz(float **matrix, int size_matrix, int row)

{max_element = matrix[row][0];(int j = 0; j < size_matrix; j++) {[j][row] = max_element;

}

}main()

{(LC_ALL, "Russian");<float> A,B;<float>::iterator it;counter = 0;n, y;("%s[%2.2f] [%2.2f]\r\n", "Значение функции на отрезке: ", pi_min, pi_max);("%s\r\n","x\ty");(float x = pi_min; x < pi_max; x += h) {("[%2.2f]\t",x); = fx(x);("[%2.2f]\r\n", y);(y, &n); // Извлечем в n целую часть числа((int) n % 3 == 0) A.push_back(y);(y < 0) {(counter >= 1) {

B.push_back(y); = 0;

}counter++;

}

}("%s\r\n", "Значение элементов массива А (кратных трем)");(it = A.begin(); it!= A.end(); it++)(" [%2.2f] ", *it);("\r\n");("%s\r\n", "Значение элементов массива B (каждое 2-ое, отрц.значение)");(it = B.begin(); it!= B.end(); it++)("[%2.2f]\t", *it);("\r\n");(int i = 0; i < B.size() - 1; i += 2) {temp = B[i];[i] = B[i + 1];[i + 1] = temp;

}("%s\r\n", "Значение элементов массива А (кратных трем)");(it = A.begin(); it!= A.end(); it++)(" [%2.2f] ", *it);("\r\n");("%s\r\n", "Значение элементов массива B (каждое 2-ое, отрц.значение)");(it = B.begin(); it!= B.end(); it++)("[%2.2f]\t", *it);("\r\n");(int i = 0; i < B.size() - 1; i += 2) {temp = B[i];[i] = B[i + 1];[i + 1] = temp;

}("%s\r\n", "Перестановка массива B (i - элемент с i + 1 - элементом)");(it = B.begin(); it!= B.end(); it++)("[%2.2f]\t", *it);("\r\n");

//Сортируем массив А, в порядке возвростания (A.begin(), A.end(), Cmp);("%s\r\n", "Значение элементов массива А (Сортировка)");(it = A.begin(); it!= A.end(); it++)(" [%2.2f] ", *it);("\r\n");("%s\r\n", "Формулирование

квадратной

матрицы из мин.размерностей массивов A и B");array_min_size = A.size();(B.size() < A.size()){_min_size = B.size();("%s[%d]\r\n", "Размерность массива меньше A, выбор в пользу B: ", array_min_size);

}("%s[%d]\r\n", "Размерность массива А меньше B,

выбор в пользу A: ",array_min_size);("%s[%d][%d]\r\n", "Создание квадратной матрицы, размерностью: ", array_min_size, array_min_size);**matrix;= new float *[array_min_size];(int i = 0; i < array_min_size; i++)[i] = new float[array_min_size];("%s\r\n", "Показ матрицы после вычесления по формуле: S(I,J) = pow(A[i],3) - |A(J)-B(J)|");max_row = fy(matrix, array_min_size, A, B);(int i = 0; i < array_min_size; i++) {(int j = 0; j < array_min_size; j++) {("[%2.2f]\t", matrix[i][j]);

}("\r\n");

}("%s[%d]\r\n", "Столбец с максимальной суммой № ", max_row);("%s\r\n","Замена элементов данного столбца, на 1ый элемент");(matrix, array_min_size, max_row);("%s\r\n", "Показ матрицы после замены");(int i = 0; i < array_min_size; i++) {(int j = 0; j < array_min_size; j++) {("[%2.2f]\t", matrix[i][j]);

}("\r\n");

}

/* Освободить память */(int i = 0; i < array_min_size; i++) {[] matrix[i];

}();0;

}

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-03-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: