From d9f484ace45a406281f2759726f0a9f933e75361 Mon Sep 17 00:00:00 2001 From: ameks94 Date: Fri, 7 Feb 2014 23:04:27 +0200 Subject: [PATCH 1/6] Update 1.cpp --- 1.cpp | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/1.cpp b/1.cpp index 898198d..182bd29 100644 --- a/1.cpp +++ b/1.cpp @@ -1,11 +1,16 @@ -// Разверните строку. Указатель reverse_string должен -// указывать на развернутую строку. +#include +#include char* string = "The string!"; - int main() { - char* reverse_string; - + char* reverse_string = new char[strlen(string)]; + for(int i = 0 ; i < strlen(string); i++) + { + reverse_string[i] = string[strlen(string)-1 - i]; + } + reverse_string[strlen(string)] = '\0'; + std::cout << reverse_string; + system("pause"); return 0; -} \ No newline at end of file +} From c0357f622c67b7156528424c6d2941936d3d1276 Mon Sep 17 00:00:00 2001 From: ameks94 Date: Fri, 7 Feb 2014 23:04:59 +0200 Subject: [PATCH 2/6] Update 2.cpp --- 2.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/2.cpp b/2.cpp index 9eed732..dbb67b5 100644 --- a/2.cpp +++ b/2.cpp @@ -1,4 +1,4 @@ -// Квадратная матрица разделена диагоналями на четыре сектора. +// Квадратная матрица разделена диагоналями на четыре сектора. // Напишите функцию min_from_top_sector(), которая будет // находить значение ячейки, минимальное для всех ячеек верхнего // сектора, включая отрезки диагоналей, составляющие этот сектор. @@ -10,7 +10,14 @@ typedef int Matrix[c_kM][c_kM]; int min_from_top_sector(Matrix& m) { - + int min = m[0][0]; + for (int i = 0; i < c_kM/2; i++) + for (int j = i+1; j < c_kM - i; j++) + { + if (m[i][j] <= min) + min = m[i][j]; + } + return min; } int _tmain(int argc, _TCHAR* argv[]) @@ -18,6 +25,6 @@ int _tmain(int argc, _TCHAR* argv[]) Matrix matrix; std::cout << min_from_top_sector(matrix) << std::endl; - + return 0; } From bc3de963a82f23bf91e5f29eaf309455195d99e0 Mon Sep 17 00:00:00 2001 From: ameks94 Date: Fri, 7 Feb 2014 23:05:23 +0200 Subject: [PATCH 3/6] Update 3.cpp --- 3.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/3.cpp b/3.cpp index 169e055..10b05f8 100644 --- a/3.cpp +++ b/3.cpp @@ -1,9 +1,8 @@ -// Напишите функцию Add(), которая создает новый +// Напишите функцию Add(), которая создает новый // объект List, инициализирует его входным значением // value и добавляет его в конец списка l, полученного // на вход. В функции main() создайте проинициализированный // список, со значениями value равными: 1, 2, 3, 4 и 5. - struct List { int value; @@ -14,10 +13,17 @@ struct List // It should return pointer to the added List object. List* Add(List* l, int value) { - + List *list = new List; + list->value = value; + l->next = list; + return list; } int main(int argc, char* argv[]) { -return 0; -} \ No newline at end of file + List * list = new List; + list->value = 1; + for (int i = 1; i < 5; i++) + Add(list,i+1); + return 0; +} From a7ed30110918ea7dea2b55240501b921cc3104fb Mon Sep 17 00:00:00 2001 From: ameks94 Date: Sat, 8 Feb 2014 16:02:02 +0200 Subject: [PATCH 4/6] Update 1.cpp --- 1.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/1.cpp b/1.cpp index 182bd29..f7915cb 100644 --- a/1.cpp +++ b/1.cpp @@ -1,15 +1,15 @@ #include -#include char* string = "The string!"; int main() { - char* reverse_string = new char[strlen(string)]; - for(int i = 0 ; i < strlen(string); i++) + int len = strlen(string); + char* reverse_string = new char[len]; + for(int i = 0 ; i < len; i++) { - reverse_string[i] = string[strlen(string)-1 - i]; + reverse_string[i] = string[len-1 - i]; } - reverse_string[strlen(string)] = '\0'; + reverse_string[len] = '\0'; std::cout << reverse_string; system("pause"); return 0; From 3dcec87d8210d988827e094f0b022015bb62569c Mon Sep 17 00:00:00 2001 From: ameks94 Date: Sat, 8 Feb 2014 16:02:32 +0200 Subject: [PATCH 5/6] Update 2.cpp --- 2.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/2.cpp b/2.cpp index dbb67b5..82006df 100644 --- a/2.cpp +++ b/2.cpp @@ -11,8 +11,8 @@ typedef int Matrix[c_kM][c_kM]; int min_from_top_sector(Matrix& m) { int min = m[0][0]; - for (int i = 0; i < c_kM/2; i++) - for (int j = i+1; j < c_kM - i; j++) + for (int i = 0; i < c_kM/2 + c_kM % 2; i++) + for (int j = i; j < c_kM - i; j++) { if (m[i][j] <= min) min = m[i][j]; From a9cd0d284d859d6a5b1470fcb9fb85f5ed26f176 Mon Sep 17 00:00:00 2001 From: ameks94 Date: Sat, 8 Feb 2014 16:04:38 +0200 Subject: [PATCH 6/6] Update 3.cpp --- 3.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/3.cpp b/3.cpp index 10b05f8..dd14236 100644 --- a/3.cpp +++ b/3.cpp @@ -15,6 +15,9 @@ List* Add(List* l, int value) { List *list = new List; list->value = value; + list->next = NULL; + if (!l) + return list; l->next = list; return list; }