diff --git a/1.cpp b/1.cpp index 190c209..2659a86 100644 --- a/1.cpp +++ b/1.cpp @@ -2,12 +2,12 @@ using namespace std; class container { - +protected: int size; public: float* p; container(int s) :size(s){} - const int& getsize() { return size;} + int& getsize() { return size;} }; @@ -15,26 +15,40 @@ class vector :public container { int call_num; public: - explicit vector(int l) :len(l),size(1 * 100){ + explicit vector(int l) :len(l),container(1 * 100){ p = new float(); } int len; - int& getlen() const { + int& getlen() { call_num ++; return len; } ~vector() = default; + vector (vector& vec):container(vec.len) + { + call_num=vec.call_num; + p=new float[size]; + len=vec.len; + for(int i=0;i> findIt; cout << countAllSpecificChars(sArr, 4, findIt); + //result for(a)=3; + //result for(I)=1; + //result for(m)=1; + //result for(i)=1; + //result for(p)=1; + //result for(c)=1; + //result for(s)=2; + //result for(l)=1; + + + + + + + return 0; } \ No newline at end of file diff --git a/3.cpp b/3.cpp index c8732ef..f730160 100644 --- a/3.cpp +++ b/3.cpp @@ -1,9 +1,10 @@ #include #include +#pragma warning(disable:4996) #define MAX_SIZE 200 int arr[MAX_SIZE]; -typedef struct alfa * alfaptr; +typedef struct alfa* alfaptr; struct alfa { long long x; @@ -45,7 +46,7 @@ void search(int x) printf("ERROR2"); break; } - node = node->next; + node = node->next; } void rpop() {//pop last element @@ -66,9 +67,9 @@ void set() int size() { alfaptr node = front; - int count; + int count = 0; while (node) - count++;node = node->next; + count++; node = node->next; return count; } @@ -88,7 +89,7 @@ int average() { alfaptr node = front; - int sum = 0, count; + int sum = 0, count = 0; while (node) { sum += node->x; count++; @@ -97,7 +98,7 @@ int average() return sum / count; } -void main() +int main() { int cmd; long long int x; @@ -109,6 +110,7 @@ void main() case 1://push scanf("%lld", &x); push(x); + // از دفعه دوم به چون front دیگر null نیست به مشکل میخورد break; case 2://pop pop(); diff --git a/4.cpp b/4.cpp index a9a32f2..f4dadc9 100644 --- a/4.cpp +++ b/4.cpp @@ -4,6 +4,7 @@ int main() float arr[5] = { 12.5, 10.0, 13.5, 90.5, 0.5 }; float *ptr1 = &arr[0]; float *ptr2 = ptr1 + 3; - printf("%f", *ptr2 - *ptr1); + printf("%f", (*ptr2 - *ptr1)); + //Output = 78.000000 return 0; } \ No newline at end of file diff --git a/5.cpp b/5.cpp index e9a1737..059f687 100644 --- a/5.cpp +++ b/5.cpp @@ -3,8 +3,11 @@ int main() { int arr[] = { 10, 20, 30, 40, 50, 60 }; int *ptr1 = arr; + // printf("%d\n",*ptr1); int *ptr2 = arr + 5; printf("%d\n", (*ptr2 - *ptr1)); printf("%c", (char)(*ptr2 - *ptr1)); + // Output = 50 + //Output = 2 return 0; } \ No newline at end of file diff --git a/6.cpp b/6.cpp index bb721c3..fc582c7 100644 --- a/6.cpp +++ b/6.cpp @@ -7,5 +7,6 @@ int main() a = 512; x[0] = 1; printf("%d\n", a); + //Output = 512 return 0; } diff --git a/7.cpp b/7.cpp index 7b065a0..86e18a5 100644 --- a/7.cpp +++ b/7.cpp @@ -6,5 +6,6 @@ int main() ++*p; p += 2; printf("%d", *p); + //Output = 3 return 0; } \ No newline at end of file diff --git a/8.cpp b/8.cpp index 76b870c..b0623cb 100644 --- a/8.cpp +++ b/8.cpp @@ -8,6 +8,6 @@ int main() { printf("%c%c ", *f(str), *(f(str) + 1)); printf("%c%c%c%c\n", **str, *(*(str + 1) + 1), *((str + 2)[-1] + 1), **&*(&str[-1] + 1)); - + //Output = Be WooW }