Пример №6 PHP: var i,j:integer; begin j:=0; i:=20; while i<100 do begin if i mod 3 = 0 then j:=j+i; inc(i); end; write('Rezultat = ',j); readln; end. Пример №5 PHP: var i,j:integer; begin j:=0; i:=1; while i<200 do begin if i mod 2 <> 0 then j:=j+i; inc(i); end; write('Rezultat = ',j); readln; end. Пример №4 PHP: var A:array [1..15] of real; i:integer; j:real; begin j:=0; for i:=1 to 15 do begin write('Vvedite element masiva # ',i,' '); readln(A[i]); if A[i]>0 then j:=j+A[i] end; Write('Otvet = ',j:1:1); readln; end. Пример №3 PHP: var i,j:integer; begin j:=0; i:=1; repeat begin if i mod 2 = 0 then j:=j+i; inc(i); end; until i>100; write('Rezultat = ',j); readln; end. Пример №2 PHP: var i,j:integer; begin j:=0; i:=1; repeat begin if i mod 4 = 0 then j:=j+i; inc(i); end; until i>100; write('Rezultat = ',j); readln; end. Пример №1 PHP: var A:array [1..12] of real; i:integer; j:real; begin j:=0; for i:=1 to 12 do begin write('Vvedite element masiva # ',i,' '); readln(A[i]); if (i mod 2 <>0) and (A[i]>0) then j:=j+A[i]; end; Write('Otvet = ',j:1:1); readln; end. Не совсем уверен в заданиях с массивами, смущает слово "константа". Работает вроде норм , но я б на твоём месте перепроверил
Может кто нить поможет студенту написать программу на c++ или хотя бы написать алгоритм для решения это задачи:
Здравствуйте! Помогите написать 3 программмы на C++ на задачи с двумерными массивами 1. Дана матрица размера M x N. Вывести ее элементы, расположенные в строках с четными номерами (2, 4, …). Вывод элементов производить по строкам, условный оператор не использовать 2. Дана квадратная матрица A порядка M. Найти среднее арифметическое элементов каждой ее диагонали, параллельной побочной (начиная с одноэлементной диагонали A1,1) 3. Дана матрица размера M x N. Зеркально отразить ее элементы относительно горизонтальной оси симметрии матрицы (при этом поменяются местами строки с номерами 1 и M, 2 и M – 1 и т. д.) Надеюсь на вашу помощь и поддержку.
Работа с файлами и строками. Написать программу, которая считывает текст из файла и выводит на экран только предложения, заключенные в кавычки. #include <iostream> #include <fstream> using namespace std; bool Test (char *str) { *str == '"'; return true; return false; } int main (void) { FILE *pf; // указатель на файл с текстом char buffer[200]; // буфер для хранения считанной строки pf = fopen ("data.txt", "r"); // открываем файл для чтения if (!pf) // если не удалость открыть { // сообщаем об ошибке printf ("No file"); return 0; } while (!feof (pf)) // цикл до конца файла { fscanf (pf, "%s", buffer); // считываем очередное слово (Test (buffer)) printf ("%s ", buffer)); } fclose (pf); // закрываем файл cin.get(); } вот код но я не пойму как мне выполнить задание
Если что поменяешь немного цифры в циклах Code: #include <iostream> using namespace std; int main() { int m,n,i,j; cout << "Enter M: "; cin >> m; cout << "Enter N: "; cin >> n; int matrix[m][n]; cout << "Enter the matrix: " << endl; for(i=0;i<m;i++) { for(j=0;j<n;j++) cin >> matrix[i][j]; } for(i=0;i<n;i+=2) { for(j=0;j<m;++j) { cout << matrix[i][j+i]; } cout << endl; } return 0; }
Как вариант, можно эти числа перевести в десятичные, а потом просто.. Code: int func(int a, int b) { int c; while (c = a % b) { a = b; b = c; } return b; }
Немного индусизм, но работает. Code: #include <iostream> using namespace std; void main(void) { int M; cout << "Enter M:" << endl; cin >> M; int **matrix=new int*[M]; for(int i = 0; i < M; i++) matrix[i]=new int[M]; cout << "Enter the matrix: " << endl; for(int i = 0; i < M; i++) { for(int j = 0; j < M; j++) cin >> matrix[i][j]; } for (int i = 0; i < M; i++) { for (int j = 0; j < M; j++) cout << matrix[i][j] << " "; cout << endl; } cout << endl << endl; for (int i = 0; i < M; i++) { int m = i,n = 0; int sum = 0; while (m < M && n < M && m >= 0 && n >= 0) { sum += matrix[m--][n++]; } cout << (double)sum/(double)(i+1) << endl; } for (int j = 1; j < M; j++) { int m = M-1,n = j; int sum = 0; while (m < M && n < M && m >= 0 && n >= 0) { sum += matrix[m--][n++]; } cout << (double)sum/(double)(M-j) << endl; } }
Не лучший способ, но рабочий. Будет совсем хорошо, если менять местами указатели на строки массива. Code: #include <iostream> using namespace std; void main(void) { int M,N; cout << "Enter M:" << endl; cin >> M; cout << "Enter N:" << endl; cin >> N; int **matrix=new int*[M]; for(int i = 0; i < M; i++) matrix[i]=new int[M]; cout << "Enter the matrix: " << endl; for(int i = 0; i < M; i++) { for(int j = 0; j < N; j++) cin >> matrix[i][j]; } for (int i = 0; i < M / 2; i++) { for (int j = 0; j < N; j++) { int temp; int n = M-i-1; temp = matrix[i][j]; matrix[i][j] = matrix[n][j]; matrix[n][j] = temp; } } }
Code: #define BUFFER_SIZE 200 #include <stdio.h> #include <conio.h> #include <memory.h> int main (void) { FILE *pf; char symbol; char buffer[BUFFER_SIZE]; bool inside = false; pf = fopen ("data.txt", "r"); if (!pf) { printf ("No file"); return 0; } int counter = 0; memset(&buffer, 13, BUFFER_SIZE); while (!feof (pf)) { fscanf (pf, "%c", &symbol); if (inside) { if (symbol == '"') { for (int i = 0; i < BUFFER_SIZE; i++) { if (buffer[i] != 13) printf("%c", buffer[i]); } printf("\n"); memset(&buffer, 13, BUFFER_SIZE); inside = false; continue; } if (counter < BUFFER_SIZE) buffer[counter++] = symbol; else { printf("error"); return -1; } } else { if (symbol == '"') { inside = true; continue; } } } fclose (pf); while(!kbhit()); }
Зачем всё так усложнять? Code: #include <iostream> #include <stdio.h> using namespace std; //----------------------------- int m,i,j,sum=0; //----------------------------- int main() { cout << "Введите M: " cout << "Введите " << m << " по " << m << " чисел" << endl; for (i=0; i<6; i++) for(j=0;j<6; j++) cin >> a[i][j]; cout << "Матрица А:" << endl; for(i=0; i<6; i++) { for(j=0;j<6; j++) cout << a[i][j] << " "; cout << endl; } for (i=0;i<6;i++) { sum+=a[i][i]; } cout << "Сумма = " << sum << endl; system("pause"); return 0; }
Требуется выполнить на паскале: В голову ничего не лезет и из-за криворукости сам сделать не могу, заранее благодарен. (Огромная просьба скинуть в ПМ) з.ы.: размерность матрицы задается пользователем, но она не может быть больше 99. все элементы матрицы рандомные
Помогите пожалуйста сделать задачку в Турбо Паскале. Так-то нужно сделать 11 задач, 7 уже сделал, думаю, что не успею до завтра. А зачет получать-то надо)) С остальными, думаю, справлюсь) Составить схему алгоритма и программу вычисления произведений положительных элементов массива C [1..N,1..M]. Исходные данные и результат выдать на печать. Заранее спасибо за помощь!
Среда Matlab Помогите, пожалуйста, написать алгоритм, который по критерию удаляет фигуры с картинки. Программа делает маркировку, и нужно удалить какой-то класс, но я не знаю как. Оставляя лишь фигуры у которых 4 угла, т.е. прямоугольники, ромбики, квадраты. программа и картинка в архиве download
Парни, подскажите плиз кто в этом шарит. Язык Java, но не в этом суть. Как правильно написать условие принадлежности точек заданной области. Вот задана область(черным цветом выделена) Необходимо написать условие, при котором, когда заданные точки находятся в этой области то возвращается значение "+", если вне этой области, то возвращается значение "-". Уже есть наработки: PHP: public String valid(double x,double y){ double alpha=0.0; double xa=Math.abs(Math.round(x*Math.cos(alpha/180.0*Math.PI)+y*Math.sin(alpha/180.0*Math.PI))); double ya=Math.abs(Math.round(y*Math.cos(alpha/180.0*Math.PI)-x*Math.sin(alpha/180.0*Math.PI))); double v=5.5; if(xa<=v && ya<=v){ return "+"; } else return "-"; } В этой реализации рассматривается область, квадрат 5.5 x 5.5, а как добавить в рассмотрение вырезанную область по углам квадрата? (Радиус вырезанной области равен 5, цена деления графика = 30px) Это координаты точек: PHP: public double xtable[]={1.0, -3.0, -7.0, 7.1, 6.0, 1.0, -4.0, 2.1}; public double ytable[]={2.0, -3.0, 1.0, -2.1, 2.4, 6.3, -1.0,-3.0}; А вот так вывожу принадлежность точек PHP: g.drawString(valid(xtable[i],ytable[i]),220,55+i*30); Заранее благодарю за помощь
задача должна обязательно содержать математику? лично я бы копнул в сторону Area, GeneralPath, area.contains(point)
Не обязательно должно содержать математику. А в Area, GeneralPath, area.contains(point) я не особо шарю. Может сможешь показать как это будет реализовано?) З.Ы. Уточню, радиус там равен не 5, а 2.5 Все, уже не актуально, добрые люди помогли. Вот решение: PHP: public boolean inArea(double x, double y) { if ((Math.abs(x) <= 5.5) && (Math.abs(y) <= 5.5) && // проверка на принадлежность квадрату (Math.pow(x - 5.5, 2) + Math.pow(y - 5.5, 2) > 6.25)) // проверка на НЕпринадлежность кругам return true; // т.е. "+" else return false; // т.е. "-" }