From c5663dc2bae3c91d1f055af1e5b293224f0679f9 Mon Sep 17 00:00:00 2001 From: RinRi Date: Tue, 13 Sep 2022 20:32:27 +0300 Subject: [PATCH] week02 --- week01/ex4 | Bin 20552 -> 20552 bytes week02/.clang-format | 2 ++ week02/ex1 | Bin 0 -> 20552 bytes week02/ex1.c | 19 ++++++++++++++ week02/ex1.sh | 4 +++ week02/ex2 | Bin 0 -> 20800 bytes week02/ex2.c | 18 ++++++++++++++ week02/ex2.sh | 4 +++ week02/ex3 | Bin 0 -> 20800 bytes week02/ex3.c | 54 ++++++++++++++++++++++++++++++++++++++++ week02/ex3.sh | 4 +++ week02/ex4 | Bin 0 -> 20832 bytes week02/ex4.c | 28 +++++++++++++++++++++ week02/ex4.sh | 4 +++ week02/ex5 | Bin 0 -> 20584 bytes week02/ex5.c | 21 ++++++++++++++++ week02/ex5.sh | 4 +++ week02/ex6 | Bin 0 -> 20856 bytes week02/ex6.c | 58 +++++++++++++++++++++++++++++++++++++++++++ week02/ex6.sh | 4 +++ 20 files changed, 224 insertions(+) create mode 100644 week02/.clang-format create mode 100755 week02/ex1 create mode 100644 week02/ex1.c create mode 100755 week02/ex1.sh create mode 100755 week02/ex2 create mode 100644 week02/ex2.c create mode 100755 week02/ex2.sh create mode 100755 week02/ex3 create mode 100644 week02/ex3.c create mode 100755 week02/ex3.sh create mode 100755 week02/ex4 create mode 100644 week02/ex4.c create mode 100755 week02/ex4.sh create mode 100755 week02/ex5 create mode 100644 week02/ex5.c create mode 100755 week02/ex5.sh create mode 100755 week02/ex6 create mode 100644 week02/ex6.c create mode 100755 week02/ex6.sh diff --git a/week01/ex4 b/week01/ex4 index d91382314a82f8ac1e6a60ad25fa32aeb1c2c9da..0efc61a47f172f07b858bdb19eea62d105bccf8c 100755 GIT binary patch delta 1051 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 JkAa6&{|TB{6>0zg literal 0 HcmV?d00001 diff --git a/week02/ex1.c b/week02/ex1.c new file mode 100644 index 0000000..a2323aa --- /dev/null +++ b/week02/ex1.c @@ -0,0 +1,19 @@ +#include +#include +#include + +int main() { + int i = INT_MAX; + unsigned short us = USHRT_MAX; + long l = LONG_MAX; + float f = FLT_MAX; + double d = DBL_MAX; + + printf("int: %lu, %d\n" + "unsigned short: %lu, %hu\n" + "long: %lu, %ld\n" + "float: %lu, %f\n" + "double: %lu, %lf\n", + sizeof(i), i, sizeof(us), us, sizeof(l), l, sizeof(f), f, sizeof(d), + d); +} \ No newline at end of file diff --git a/week02/ex1.sh b/week02/ex1.sh new file mode 100755 index 0000000..d554831 --- /dev/null +++ b/week02/ex1.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex1.c -o ex1 +./ex1 \ No newline at end of file diff --git a/week02/ex2 b/week02/ex2 new file mode 100755 index 0000000000000000000000000000000000000000..2f03a0430252812b61453ca911e068511913a0ec GIT binary patch literal 20800 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 W-J;9esG00Pz0K3OxyGPIRR0A#w}#pP literal 0 HcmV?d00001 diff --git a/week02/ex2.c b/week02/ex2.c new file mode 100644 index 0000000..7538e42 --- /dev/null +++ b/week02/ex2.c @@ -0,0 +1,18 @@ +#include +#include + +int main() { + char s[257], c; + int i = 0; + while ((c = getc(stdin)) != '.') { + if (c == '\n') + break; + s[i++] = c; + } + s[i] = '\0'; + // i is already the size of s. I've used strlen to follow the 'hints' + // section. + for (i = strlen(s) - 1; i >= 0; --i) { + putc(s[i], stdout); + } +} \ No newline at end of file diff --git a/week02/ex2.sh b/week02/ex2.sh new file mode 100755 index 0000000..49e4f0d --- /dev/null +++ b/week02/ex2.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex2.c -o ex2 +./ex2 \ No newline at end of file diff --git a/week02/ex3 b/week02/ex3 new file mode 100755 index 0000000000000000000000000000000000000000..3245d8e817d868124314b43c390ff0c1fa111fa1 GIT binary patch literal 20800 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 literal 0 HcmV?d00001 diff --git a/week02/ex3.c b/week02/ex3.c new file mode 100644 index 0000000..7572bec --- /dev/null +++ b/week02/ex3.c @@ -0,0 +1,54 @@ +#include +#include + +/* DISCLAIMER: As far as I understand, I need to create a function, + which takes a long long number (not a string), convert it to a + string, use that string as it was a number in the source + number system, and then print out in the target number system. + + I think it is way better to use string for the number itself and + read it as a string from the beginning. But I will follow the + assignment instructions since I don't want to get a lower grade. + Please, make it more clear next time. + */ + +void convert(long long n, int s, int t) { + if (!(s >= 2 && s <= 10 && t >= 2 && t <= 10)) { + printf("cannot convert!\n"); + return; + } + + // convert n from source number system to normal long long integer + long long n_actual = 0, cur = 1; + while (n) { + if (n % 10 >= s) { + printf("cannot convert!\n"); + return; + } + n_actual += cur * (n % 10); + cur *= s; + n /= 10; + } + + // convert the actual n to target number system + char buf[65]; + int i = 0; + while (n_actual) { + buf[i++] = (n_actual % t) + '0'; + n_actual /= t; + } + buf[i] = '\0'; + + for (--i; i >= 0; --i) { + putc(buf[i], stdout); + } + + putc('\n', stdout); +} + +int main() { + long long number; + int source, target; + scanf("%lld%d%d", &number, &source, &target); + convert(number, source, target); +} \ No newline at end of file diff --git a/week02/ex3.sh b/week02/ex3.sh new file mode 100755 index 0000000..482c6bd --- /dev/null +++ b/week02/ex3.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex3.c -o ex3 +./ex3 \ No newline at end of file diff --git a/week02/ex4 b/week02/ex4 new file mode 100755 index 0000000000000000000000000000000000000000..a42c2f91a48d5bf5780c98b94684c1862234caef GIT binary patch literal 20832 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 XE~V}Bc4{X3uWxm%_Lmrxkm5f9IpprO literal 0 HcmV?d00001 diff --git a/week02/ex4.c b/week02/ex4.c new file mode 100644 index 0000000..797a2f0 --- /dev/null +++ b/week02/ex4.c @@ -0,0 +1,28 @@ +#include +#include +#include + +int count(char s[], char c) { + int cnt = 0, sz = strlen(s); + for (int i = 0; i < sz; ++i) { + if (tolower(s[i]) == tolower(c)) + cnt++; + } + + return cnt; +} + +void countAll(char s[]) { + int sz = strlen(s); + for (int i = 0; i < sz; ++i) { + int cnt = count(s, s[i]); + if (cnt > 0) + printf("%c:%d%s", tolower(s[i]), cnt, (i == sz - 1 ? "\n" : ", ")); + } +} + +int main() { + char s[257]; + scanf("%s", s); + countAll(s); +} \ No newline at end of file diff --git a/week02/ex4.sh b/week02/ex4.sh new file mode 100755 index 0000000..7c5306b --- /dev/null +++ b/week02/ex4.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex4.c -o ex4 +./ex4 \ No newline at end of file diff --git a/week02/ex5 b/week02/ex5 new file mode 100755 index 0000000000000000000000000000000000000000..74b5561cd207d52aa17dfd36fa6e2b58e69293fe GIT binary patch literal 20584 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 P`>&Y`otr%d9#Z`$t + +long long tribonacci(int n) { + long long a = 0, b = 1, c = 1; + if (n == 0) + return a; + if (n == 1) + return b; + if (n == 2) + return c; + + for (int i = 3; i <= n; ++i) { + long long d = a + b + c; + a = b, b = c, c = d; + } + return c; +} + +int main() { + printf("%lld\n%lld\n", tribonacci(4), tribonacci(36)); +} \ No newline at end of file diff --git a/week02/ex5.sh b/week02/ex5.sh new file mode 100755 index 0000000..d924681 --- /dev/null +++ b/week02/ex5.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex5.c -o ex5 +./ex5 \ No newline at end of file diff --git a/week02/ex6 b/week02/ex6 new file mode 100755 index 0000000000000000000000000000000000000000..dc33eb8f954212ad8e7288a02bf572d5220033e7 GIT binary patch literal 20856 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 pPkjEX0*~jOZDH3#>cF$p + +void triangle(int n) { + for (int i = 1; i <= n; ++i) { + for (int j = 1; j <= n - i; ++j) + printf(" "); + + for (int j = 1; j <= i * 2 - 1; ++j) { + printf("*"); + } + printf("\n"); + } +} + +void triangle2(int n) { + for (int i = 1; i <= n; ++i) { + for (int j = 1; j <= i; ++j) { + printf("*"); + } + printf("\n"); + } +} + +void arrow(int n) { + for (int i = 1; i <= (n + 1) / 2; ++i) { + for (int j = 1; j <= i; ++j) { + printf("*"); + } + printf("\n"); + } + for (int i = n / 2; i >= 1; --i) { + for (int j = 1; j <= i; ++j) { + printf("*"); + } + printf("\n"); + } +} + +void rectangle(int n, int m) { + for (int i = 0; i < n; ++i) { + for (int j = 0; j < m; ++j) { + printf("*"); + } + printf("\n"); + } +} + +int main() { + int n; + printf("Specify number of rows: "); + scanf("%d", &n); + // triangle(n); + triangle2(n); + printf("\n"); + arrow(n); + printf("\n"); + rectangle(n, n); +} \ No newline at end of file diff --git a/week02/ex6.sh b/week02/ex6.sh new file mode 100755 index 0000000..1ef5ed3 --- /dev/null +++ b/week02/ex6.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +gcc ex6.c -o ex6 +./ex6 \ No newline at end of file