Написать программу на c
Автор юрий1996 задал вопрос в разделе Другие языки и технологии
Как написать программу на С++? и получил лучший ответ
Ответ от .[гуру]
При создании программы используйте текстовый редактор, чтобы ввести операторы C++ в исходный файл программы. • Для преобразования операторов программы C++ в выполнимую программу, в единицы и нули, которые понимает компьютер, используйте специальную программу — компилятор C++.• Для изменения или исправления программы используйте текстовый редактор. • При нарушении одного (или более) правил программирования на C++ компилятор выдаст на экран сообщения о синтаксических ошибках. Вам следует отредактировать программу, чтобы исправить ошибки, а затем запустить компилятор снова.
#include <iostream>#include <iomanip>using namespace std;int main() {setlocale(LC_CTYPE, "Russian_Russia.1251");cout << "Введите a: "; double a; cin >> a;cout << "Введите b: "; double b; cin >> b;cout << "Введите c: "; double c; cin >> c;cout << "Введите x1: "; double x1; cin >> x1;cout << "Введите x2: "; double x2; cin >> x2;if (x1 >= x2) exit(1);cout << "Введите dx: "; double dx; cin >> dx;if (dx <= 0) exit(2);double f, x = x1, eps = 1e-14;bool flag;while (x < x2) {flag = true;if (fabs(x - 0.6) < eps) x = 0.6;if (x < 0.6 && b + c != 0) f = a * pow(x, 3) + b * b + c;else if (x > 0.6 && 0 == b + c) {double xc = x - c;if (fabs(xc) > eps) f = (x - a) / xc;else {cout << fixed << "F(" << setw(5) << setprecision(2) << x << "). Попытка деления на ноль!
";flag = false;}}else {if (c && a) f = x / c + x / a;else {cout << fixed << "F(" << setw(5) << setprecision(2) << x << "). Попытка деления на ноль!
";flag = false;}}if (flag) cout << fixed << "F(" << setw(5) << setprecision(2) << x << ") = " << setprecision(8) << setw(11) << f << '
';x += dx;if (fabs(x) < eps) x = 0;}cin.sync();cin.get();}
Тут просят показать наработки не для того, чтобы их переделать, а для того, чтобы увидеть, чем можно тебе помочь. Судя по тому, что твоих наработок нет, тебе помочь можно только советом почитать книгу. Ну, или деньги предлагай, но это уже не помощь.
#include <iostream>
#include <cmath>
using namespace std;
int maxabs_array(const int* f, const int* l);
int sumto_array(const int* f, const int* l);
void part_array(int* f, int* l, int a, int b);
int main(void){
int A[] = { -1, -2, 5, 4, 6, -7, 8, 3 };
size_t N = sizeof(A)/sizeof(int);
//индекс максимального по модулю элемента массива
int i = maxabs_array(A, A + N);
cout << "index max abs: " << i << " = " << A[i] << endl;
//сумму элементов после 1-го положителного элемента массива
int sum = sumto_array(A, A + N);
cout << "sum: " << sum << endl;
//3 - задание
part_array(A, A + N, 3, 7);
for(const int* p = &A[0]; p != A + N; ++p)
cout << *p << ' ';
return 0;
}
//индекс максимального по модулю элемента массива
int maxabs_array(const int* f, const int* l){
const int* t = f, *p = f;
int k, n = abs(*f);
while(f != l){
if((k = abs(*f)) > n){
p = f;
n = k;
}
++f;
}
return (int)(p - t);
}
//сумму элементов после 1-го положителного элемента массива
int sumto_array(const int* f, const int* l){
int sum;
while((f != l) && (*f <= 0))
++f;
if(f != l)
++f;
for(sum = 0; f != l; sum += *f++);
return sum;
}
//3-задание
void part_array(int* f, int* l, int a, int b){
int* p = f;
while(f != l){
if((*f >= a) && (*f <= b))
swap(*p++, *f);
++f;
}
}
Вот код: ссылка
Создаётся массив из 10 элементов, далее заполняется путём ввода в консоль, далее выводятся сам массив и результаты выполнения заданий.
Удачной сдачи.