Вопрос № 119136: Здравствуйте!МОжет вы и мне поможете? Никак не могу справиться с задачей:
вывести на экран график функции у=х sin(x*x) Помогите пожалуйста.Заранее большое спасибо!!...Вопрос № 119164: дан массив А из 10 элементов.Организуйте массив В такой что В(i)=(A(i)^2)+1 если A(i)>=0 B(i)=1 если А(i)<0 сижу на экзамене нужно решение HEEELLP...Вопрос № 119176: Уважаемые эксперты!
Скажите, почему в примере ( ниже ) использования библиотечной функции qsort во вспомогательной функции compare прога работает корректно, только если использовать приведение к типу (unsigned long*) или (long*), а с (int*) или в...Вопрос № 119215: Здравствуйте! Скажите пожалуйста, какие функции выполняет заголовочный файл <map>? У меня есть задача: после ввода произвольного текста вывести на экран только согласные буквы кирилицы и латинского текста.Повторяющиеся
символы не выводить. Може...Вопрос № 119218: Здравствуйте.!Есть задача: После ввода произвольного текста вывести на экран согласные буквы кириллицы и латинского алфавита. Повторяющиеся символы не выводить. Написала код, а он не компилируется, посмотрите, пожалуйста,скажите,что я делаю не так.За...Вопрос № 119237: Help me please уважаемые эксперты
Matrix15. Дана квадратная матрица A порядка M (M — нечетное число). Начиная с элемента A1,1 и перемещаясь по часовой стрелке, вывести все ее элементы по спирали: первая строка, последний столбец, последняя строка...Вопрос № 119238: Помогите решить пажалуста эксперты
Matrix29. Дана матрица размера M x N. В каждой ее строке найти количество элементов, меньших среднего арифметического всех элементов этой строки. ...Вопрос № 119239: Помогите решить пажалуста эксперты
Matrix46. Дана целочисленная матрица размера M x N. Найти элемент, являющийся максимальным в своей строке и минимальным в своем столбце. Если такой элемент отсутствует, то вывести 0. ...Вопрос № 119240: Помогите решить пажалуста эксперты
Дана матрица размера M x N (M и N — четные числа). Поменять местами левую верхнюю и правую нижнюю четверти матрицы....Вопрос № 119241: Помогите решить пажалуста эксперты
Дана матрица размера M x N. Удалить ее последний столбец, содержащий только отрицательные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений. ...Вопрос № 119242: Помогите решить пажалуста эксперты
Дана матрица размера M x N. Элемент матрицы называется ее локальным максимумом, если он больше всех окружающих его элементов. Поменять знак всех локальныx максимумов данной матрицы на противоположный. При решен...Вопрос № 119243: Помогите решить пажалуста эксперты
Matrix88. Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие ниже главной диагонали. Условный оператор не использовать. ...Вопрос № 119244: Помогите решить пажалуста эксперты
Дана квадратная матрица A порядка M. Повернуть ее на угол 90° в положительном направлении, то есть против часовой стрелки (при этом элемент A1,1 перейдет в AM,1, элемент AM,1 — в AM,M и т. д.). Вспомогательную м...Вопрос № 119255: Всем привет,помогите плиз решить такую вот задачку:
Реализовать с использованием массива двунаправленное кольцо (просмотр возможен в обе стороны, от последнего элемента можно перейти к первому).Распечатать полученный массив, начиная с К-ого элеме...
Вопрос № 119.136
Здравствуйте!МОжет вы и мне поможете? Никак не могу справиться с задачей:
вывести на экран график функции у=х sin(x*x) Помогите пожалуйста.Заранее большое спасибо!!
Отвечает: Попов А.С.
Здравствуйте, Ковалевская Е.А.!
Тип проекта должен быть standard Win32 application
Код отвечающий за отрисовку графика:
HDC h;
int y;
h = GetDC(hwnd);
for(int i=-200; i<200; ++i)
{
y = (i*sin((long double)i*i));
LineTo(h,i+200,y+180);
MoveToEx(h,i+200,y+180,NULL);
}
Приложение:
Ответ отправил: Попов А.С. (статус: 7-ой класс)
Ответ отправлен: 18.01.2008, 12:42 Оценка за ответ: 5 Комментарий оценки: Спасибо большое!!!!
Вопрос № 119.164
дан массив А из 10 элементов.Организуйте массив В такой что В(i)=(A(i)^2)+1 если A(i)>=0 B(i)=1 если А(i)<0 сижу на экзамене нужно решение HEEELLP
Отвечает: Попов А.С.
Здравствуйте, Асташков Илья Федорович!
Решение смотрите в приложении
Приложение:
Ответ отправил: Попов А.С. (статус: 7-ой класс)
Ответ отправлен: 18.01.2008, 12:59 Оценка за ответ: 3
Вопрос № 119.176
Уважаемые эксперты!
Скажите, почему в примере ( ниже ) использования библиотечной функции qsort во вспомогательной функции compare прога работает корректно, только если использовать приведение к типу (unsigned long*) или (long*), а с (int*) или вообще напрямую (char*) не работает????
В книге, где я это почерпнул, это не пояснено((
Приложение:
Отправлен: 18.01.2008, 14:39
Вопрос задал: Warobushek (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Lang21
Здравствуйте, Warobushek!
Правильный вид функции сравнения:
int compare(const void *a, const void *b)
{
return strcmp(*(const char**) a, *(const char**) b);
}
Функция compare получает указатель на объект, подлежащий сравнению. Таким объектом является, в данном случае, строка, то есть указатель на char. Следовательно, аргументы есть фактически указатели на указатели на char, и должны быть преобразованы к такому виду.
Функция strcmp требует char*, поэтому нужно разыменование.
Ваша функция работает, по-видимому, потому, что unsigned long соответствует 32-разрядному адресу.
Желаю успехов!
Ответ отправил: Lang21 (статус: 2-ой класс)
Ответ отправлен: 18.01.2008, 17:45 Оценка за ответ: 5 Комментарий оценки: спасибо
Вопрос № 119.215
Здравствуйте! Скажите пожалуйста, какие функции выполняет заголовочный файл <map>? У меня есть задача: после ввода произвольного текста вывести на экран только согласные буквы кирилицы и латинского текста.Повторяющиеся символы не выводить. Может можно сделать как-то при помощи словаря?
Отвечает: Sergey A. Wedensky
Здравствуйте, Ковалевская Е.А.!
В заголовочном файле
Ответ отправил: Sergey A. Wedensky (статус: Студент)
Ответ отправлен: 18.01.2008, 18:49
Вопрос № 119.218
Здравствуйте.!Есть задача: После ввода произвольного текста вывести на экран согласные буквы кириллицы и латинского алфавита. Повторяющиеся символы не выводить. Написала код, а он не компилируется, посмотрите, пожалуйста,скажите,что я делаю не так.Заранее большое спасибо!
Отвечает: X-men
Здравствуйте, Ковалевская Е.А.!
Код - в приложении.
В задании у вас написано "СОГЛАСНЫЕ буквы", а буквы АаЕеIiOoUu - ГЛАСНЫЕ!
Ошибки были в следующем:
1. char A,a,E,e,I,i,O,o,U,u; // незачем так делать (создавать для каждого символа отдельную переменную), нужно создать 1 массив, в котором будут храниться ВСЕ ЭТИ символы.
2. Во первых, я так и не понял для чего нужна переменная х и n в вашей программе, и зачем мы их вводим с клавиатуры. Пользователь с клавиатуры должен ввести НЕ 2 СИМВОЛА в 2 разные переменные, а МАССИВ СИМВОЛОВ (stroka[20]).
3. if (x!=(A,a,E,e,I,i,O,o,U,u); x<=N;x++)
А этому вообще нереально скомпилироваться, сейчас объясню почему. Условный оператор предназначен для проверки какого-либо условия, не так ли? А вы пытаетесь в нём выполнить сразу несколько операций, разделённых к тому же точкой с запятой. Запомните раз и навсегда, В УСЛОВНОМ ОПЕРАТОРЕ В КРУГЛЫХ СКОБКАХ НИКОГДА НЕ СТАВИТСЯ ТОЧКА С ЗАПЯТОЙ ! Ваша конструкция по виду напоминает цикл for( ; ; ), в нём как раз точки с запятыми очень даже необходимы, видимо вы перепутали for с if-ом.
При необходимости, вы можете дописать в массив soglas согласные РУССКИЕ буквы (сейчас там вообще находятся гласные буквы латинского алфавита).
Приложение:
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 18.01.2008, 19:50 Оценка за ответ: 5 Комментарий оценки: Большое-пребольшое спасибо!!
Вопрос № 119.237
Help me please уважаемые эксперты
Matrix15. Дана квадратная матрица A порядка M (M — нечетное число). Начиная с элемента A1,1 и перемещаясь по часовой стрелке, вывести все ее элементы по спирали: первая строка, последний столбец, последняя строка в обратном порядке, первый столбец в обратном порядке, оставшиеся элементы второй строки и т. д.; последним выводится центральный элемент матрицы.
Отправлен: 18.01.2008, 20:52
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
void main (){
int m,i,j;
srand(unsigned int(time(NULL)));
do {
cout << endl << "Enter M: ";
cin >> m;
}
while(m%2==0);
int **a = new int*[m];
cout << endl;
for (i=0; i<m; i++){
a[i] = new int [m];
for (j=0; j<m; j++){
a[i][j] = rand() % 10;
cout << setw(4) << a[i][j];
}
cout << endl;
}
cout << endl;
for (i=0; i<m; i++){
for (j=i; j<m-i; j++)
cout << setw(4) << a[i][j];
cout << endl;
for (j=i+1; j<m-i; j++)
cout << setw(4) << a[j][m-i-1];
cout << endl;
for (j=m-i-2; j>=i; j--)
cout << setw(4) << a[m-i-1][j];
cout << endl;
for (j=m-i-2; j>i; j--)
cout << setw(4) << a[j][i];
cout << endl;
}
getch();
}
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 18.01.2008, 21:19 Оценка за ответ: 5
Вопрос № 119.238
Помогите решить пажалуста эксперты
Matrix29. Дана матрица размера M x N. В каждой ее строке найти количество элементов, меньших среднего арифметического всех элементов этой строки.
Отправлен: 18.01.2008, 20:53
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: X-men
Здравствуйте, Razum89!
Код - в приложении. MS Visual Studio C++
Приложение:
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 18.01.2008, 21:33 Оценка за ответ: 5
Отвечает: shayen
Здравствуйте, Razum89!
может и не самое красивое решение, но рабочее
Приложение:
Ответ отправил: shayen (статус: 2-ой класс)
Ответ отправлен: 19.01.2008, 23:18 Оценка за ответ: 5
Вопрос № 119.239
Помогите решить пажалуста эксперты
Matrix46. Дана целочисленная матрица размера M x N. Найти элемент, являющийся максимальным в своей строке и минимальным в своем столбце. Если такой элемент отсутствует, то вывести 0.
Отправлен: 18.01.2008, 20:54
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Warobushek
Здравствуйте, Razum89!
Вот решение. Может не самое эффективное, но вроде работает:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define M 2
#define N 2
void main()
{
clrscr();
int A[M][N];
randomize();
int i,j,max,k,s;
char flag;
/*zapolnim matricy*/
for(j=0;j<M;j++)
for(i=0;i<N;i++)
{
A[j][i]=rand();
}
printf("usxodnaia matrica:");
for(j=0;j<M;j++)
for(i=0;i<N;i++)
{
(i)%N==0?printf("
%d ",A[j][i]):printf("%d ",A[j][i]);
}
/*meniaem */
for(j=0;j<M;j++)
{
int max=A[j][0];
k=0;
for(i=0;i<N-1;i++)
{
if(max<A[j][i+1])
{
k=i+1;//nomer stolbca s max elem
max=A[j][k];//maksimal'nii element v stroke
}
}
/* max element v j-i stroke A[j][k]*/
/* sravnivaem s drygimi elem stolbca*/
for(s=0;s<M;s++)
if(max>A[s][k])
{
flag=0;
break;
}
else flag=1;
if(flag)
{
printf("
A[%d][%d]=%d-tot samii elem",j,k,A[j][k]);
break;
}
else flag=-1;
}
if(flag==-1) printf("
0",j);
if(!getch())getch();
}
Ответ отправил: Warobushek (статус: 1-ый класс)
Ответ отправлен: 19.01.2008, 17:38 Оценка за ответ: 4
Отвечает: shayen
Здравствуйте, Razum89!
может не очень красиво, но работает. Комилил на VS 2003
Приложение:
Ответ отправил: shayen (статус: 2-ой класс)
Ответ отправлен: 20.01.2008, 18:50 Оценка за ответ: 4
Отвечает: X-men
Здравствуйте, Razum89!
На мой взгляд, для этой задачи заполнение матрицы случайными величинами - не лучшая идея, т.к. не всегда может попасться элемент, который будет максимумом в строке и, одновременно, минимумом в столбце. Поэтому, я сделал ручной ввод элементов матрицы.
Если в условии написано "... матрица размера M x N ...", то нужно создавать не статический массив, а динамический, чтобы пользователь самостоятельно ввёл количество строк и столбцов. По крайней мере меня так учили.
Написана программа, как всегда, на Microsoft Visual Studio 8 (2005) Express Edition.
В этой среде работает хорошо, за компиляцию в других средах не ручаюсь.
Приложение:
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 21.01.2008, 01:33 Оценка за ответ: 5
Вопрос № 119.240
Помогите решить пажалуста эксперты
Дана матрица размера M x N (M и N — четные числа). Поменять местами левую верхнюю и правую нижнюю четверти матрицы.
Отправлен: 18.01.2008, 20:54
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Warobushek
Здравствуйте, Razum89!
Вот мой вариант решения, написано на простом Си в Borland C++3.1
#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
#define M 4
#define N 8
#define SWAP(x1,x2) { x1^=x2;x2^=x1;x1^=x2; }
void main()
{
clrscr();
int A[M][N];
randomize();
int i,j;
/*zapolnim matricy*/
for(j=0;j<M;j++)
for(i=0;i<N;i++)
{
A[j][i]=rand();
}
printf("usxodnaia matrica:");
for(j=0;j<M;j++)
for(i=0;i<N;i++)
{
(i)%N==0?printf("
%d ",A[j][i]):printf("%d ",A[j][i]);
}
/*meniaem */
for(j=0;j<M/2;j++)
for(i=0;i<N/2;i++)
{
SWAP(A[j][i],A[j+M/2][i+N/2]);
}
printf("
kone4naia matrica:");
for(j=0;j<M;j++)
for(i=0;i<N;i++)
{
(i)%N==0?printf("
%d ",A[j][i]):printf("%d ",A[j][i]);
}
if(!getch())getch();
}
Ответ отправил: Warobushek (статус: 1-ый класс)
Ответ отправлен: 19.01.2008, 17:04 Оценка за ответ: 4
Вопрос № 119.241
Помогите решить пажалуста эксперты
Дана матрица размера M x N. Удалить ее последний столбец, содержащий только отрицательные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений.
Отправлен: 18.01.2008, 20:55
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Warobushek
Здравствуйте, Razum89!
Вот код:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define M 4
#define N 4
void main()
{
clrscr();
int A[M][N]={{1,-2,-4,9},
{-3,-2,-1,79},
{11,-12,-42,-9},
{1,-2,-4,9}
};
randomize();
int i,j,k;
Ответ отправил: Warobushek (статус: 1-ый класс)
Ответ отправлен: 19.01.2008, 18:14 Оценка за ответ: 4
Вопрос № 119.242
Помогите решить пажалуста эксперты
Дана матрица размера M x N. Элемент матрицы называется ее локальным максимумом, если он больше всех окружающих его элементов. Поменять знак всех локальныx максимумов данной матрицы на противоположный. При решении допускается использовать вспомогательную матрицу.
Отправлен: 18.01.2008, 20:55
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: X-men
Здравствуйте, Razum89!
А вот и моя программка на Microsoft VC++.
Приложение:
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 21.01.2008, 02:52
Вопрос № 119.243
Помогите решить пажалуста эксперты
Matrix88. Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие ниже главной диагонали. Условный оператор не использовать.
Отправлен: 18.01.2008, 20:56
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
void main () {
int m,i,j;
srand (unsigned int (time (NULL)));
cout << "Enter M: ";
cin >> m;
int **b = new int *[m];
for (i=0; i<m; i++) {
b[i] = new int [m];
for (j=0; j<m; j++)
b[i][j] = rand() % 10;
}
cout << endl;
for (i=0; i<m; i++){
for (j=0; j<m; j++)
cout << setw(4) << b[i][j];
cout << endl;
}
for (i=1; i<m; i++)
for (j=0; j<i; j++)
b[i][j] = 0;
cout << endl;
for (i=0; i<m; i++){
for (j=0; j<m; j++)
cout << setw(4) << b[i][j];
cout << endl;
}
getch();
}
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 18.01.2008, 23:07 Оценка за ответ: 5
Отвечает: shayen
Здравствуйте, Razum89!
приложение проверялось под VS 2003
Приложение:
Ответ отправил: shayen (статус: 2-ой класс)
Ответ отправлен: 19.01.2008, 21:57 Оценка за ответ: 5
Вопрос № 119.244
Помогите решить пажалуста эксперты
Дана квадратная матрица A порядка M. Повернуть ее на угол 90° в положительном направлении, то есть против часовой стрелки (при этом элемент A1,1 перейдет в AM,1, элемент AM,1 — в AM,M и т. д.). Вспомогательную матрицу не использовать.
Отправлен: 18.01.2008, 20:56
Вопрос задал: Razum89 (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: X-men
Здравствуйте, Razum89!
Вот тебе программка. Всё, как просил, без вспомогательной матрицы.
Приложение:
Ответ отправил: X-men (статус: 8-ой класс)
Ответ отправлен: 19.01.2008, 01:07 Оценка за ответ: 5
Отвечает: Евсюков Виталий Евгеньевич !!! Здравствуйте, Razum89! К х-мену: бред. А про остальные углы Вы забыли? Исправленный вариант тела цикла - в приложении.
Приложение:
Ответ отправил: Евсюков Виталий Евгеньевич (статус: 3-ий класс)
Ответ отправлен: 19.01.2008, 16:47 Оценка за ответ: 4
Вопрос № 119.255
Всем привет,помогите плиз решить такую вот задачку:
Реализовать с использованием массива двунаправленное кольцо (просмотр возможен в обе стороны, от последнего элемента можно перейти к первому).Распечатать полученный массив, начиная с К-ого элемента и до К-1 ( по кольцу влево).Добавить в кольцо первый и последний элементы.
Распечатать полученный массив, начиная с К-ого элемента (и до К+1 по кольцу вправо).
Приложение:
Отправлен: 18.01.2008, 23:08
Вопрос задал: Простоламо (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Warobushek
Здравствуйте, Простоламо!
Вот Вам мой вариант решения. Кольцо реализовано с помощью функции kolco.
Её параметры:
1. A - указатель на начало массива
2. dim - размер массива
3. k - элемент с которого начать печатать
4. kol - количество оборотов кольца
.....................
В BC3.1++ все работает. Если есть претензии по решению, то в следующий раз яснее излагайте требования, что именно нужно. А то, что Вы просили: "Распечатать полученный массив, начиная с К-ого элемента (и до К+1 по кольцу вправо)."
сделал.
Приложение:
Ответ отправил: Warobushek (статус: 1-ый класс)
Ответ отправлен: 19.01.2008, 18:57