С#. 50
дана строка, состоящая из символов цифр. сформировать новую строку, в которую входят только символы из указанных диапазонов: ‘0’/‘3’, ‘4’/‘6’, ‘7’/‘9’ в любой комбинации. найти сумму или среднее из числовых представлений символов данной строки.
Відповідь:
#include <iostream>
#include <cstdlib>
#include <time.h>
using namespace std;
void randarr(int *D,int N){
for(int i = 0; i < N; i++){
D[i] = rand() % 100 + 0;
}
}
void printarr(int *D,int N){
for(int i = 0; i < N; i++){
cout << D[i] << " ";
}
}
void swapkm(int *D,int N,int m,int k){
int mt,kt;
for(int i = 0; i < m; i++){
mt = D[i];
}
for(int j = 0; j < k; j++){
kt = D[j];
}
cout << "м-тый елемент = " << mt << endl;
cout << "k-ый елемент = " << kt << endl;
cout << "Меняем местами " << mt << " и " << kt << endl;
swap(D[m-1],D[k-1] );
}
int main(){
srand(time(NULL));
setlocale(LC_ALL , "Rus");
int N,m,k;
cout << "Введите размер массива: ";
cin >> N;
int *D = new int[N];
randarr(D,N);
printarr(D,N);
cout << "\nМеняем m-ый и k-ый елементы местами..." << endl;
cout << "Введите номер m-ого елемента: ";
cin >> m;
cout << "Введите номер k-ого елемента: ";
cin >> k;
swapkm(D,N,m,k);
printarr(D,N);
delete[] D;
return 0;
}
1)
a = [12,32,51,2,5,-10,-20,23,-23] # задаете любой массив
a.sort()
minim = 0
maxim = 0
for i in range(len(a)):
if a[i] % 2 == 0:
minim = a[i]
break
a = list(reversed(a))
for i in range(len(a)):
if a[i] % 2 == 0:
maxim = a[i]
break
print(minim)
print(maxim)
2)
a = [12,32,51,2,1,-10,-20,21,-23]
a.sort()
minim = 0
maxim = 0
for i in range(len(a)):
if a[i] % 10 == 5:
minim = a[i]
break
a = list(reversed(a))
for i in range(len(a)):
if a[i] % 10 == 5:
maxim = a[i]
break
if minim == 0 and maxim == 0:
print('No')
else:
print(minim)
print(maxim)