23 нояб. 2024 г., 12:49

This commit is contained in:
Виталий Туров 2024-11-23 09:49:24 +00:00
parent f77b27b961
commit aa4fd2a954
7 changed files with 98 additions and 0 deletions

BIN
bash/summ Executable file

Binary file not shown.

57
bash/task.sh Normal file → Executable file
View File

@ -0,0 +1,57 @@
#!/bin/bash
CpArray_Mac() {
# Оператор Присваивания
echo -n 'eval '
echo -n "$2" # Имя массива-результата
echo -n '=( ${'
echo -n "$1" # Имя исходного массива
echo -n '[@]} )'
# Все это могло бы быть объединено в одну команду.
# Это лишь вопрос стиля.
}
declare -f CopyArray # "Указатель" на функцию
CopyArray=CpArray_Mac # Оператор Присваивания
Hype()
{
# Исходный массив с именем в $1.
# (Слить с массивом, содержащим "-- Настоящий Рок-н-Ролл".)
# Вернуть результат в массиве с именем $2.
local -a TMP
local -a hype=( -- Настоящий Рок-н-Ролл )
$($CopyArray $1 TMP)
TMP=( ${TMP[@]} ${hype[@]} )
$($CopyArray TMP $2)
}
declare -a before=( Advanced Bash Scripting )
declare -a after
echo "Массив before = ${before[@]}"
Hype before after
echo "Массив after = ${after[@]}"
# Еще?
echo "Что такое ${after[@]:4:2}?"
declare -a modest=( ${after[@]:2:1} ${after[@]:3:3} )
# ---- выделение подстроки ----
echo "Массив Modest = ${modest[@]}"
# А что в массиве 'before' ?
echo "Массив Before = ${before[@]}"
exit 0

15
bash/task2.sh Executable file
View File

@ -0,0 +1,15 @@
#!/bin/bash
arg1_test=( 2 -3 5 -7 -200 5 -1 -1 )
arg2_test=( 2 3 4 5 100 0 -1 -23 )
result=( 4 0 10 -2 -100 5 -2 -24 )
for i in ${!arg1_test[@]}
do
output=$(./summ ${arg1_test[$i]} ${arg2_test[$i]})
if [ $output -eq ${result[$i]} ]; then
echo "PASS"
else
echo "FAIL"
fi
done

View File

View File

14
cpp/task1/CMakeLists.txt Normal file
View File

@ -0,0 +1,14 @@
cmake_minimum_required(VERSION 3.10)
# Укажите имя проекта
project(task1)
# Укажите стандарт C++
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(SOURCE ${CMAKE_CURRENT_SOURCE}/main.cpp)
# Добавьте исполняемый файл
add_executable(${CMAKE_PROJECT} ${SOURCE})

12
cpp/task1/main.cpp Normal file
View File

@ -0,0 +1,12 @@
#include <iostream>
#include <string>
int main (int argc, char *argv[]) {
int summ = 0;
for (int i = 1; i < argc; i++) {
summ += std::stoi(argv[i]);
}
std::cout << summ;
return 0;
}