Форум программистов, компьютерный форум CyberForum.ru

4 задания, очень нужно - C++

Восстановить пароль Регистрация
 
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 16:55     4 задания, очень нужно #1
Ситуация оч.сложная, помогите пожалуйста, с задачами.

1. Дана функция и известно, что она монотонна на [a,b]
Найти приближенное решение уравнения f(x)=0 с точностью до 0.001 на этом отрезке или сообить, что решения нет. Для решения задачи определить в программе функцию float f(float x) и переменные а и b, например, так

float a = 0;
float b = 2;

float f(float x)
{
return (x*x - 1)
}
Тогда уравнение примет вид: х^2-1=0 & x E [0,2]; и выдаст ответ х=1
Перебор от а до б делать НЕ нужно. лучше найти корень методом деления пополам.

2. Дан массив нат.чисел, проверить, все ли его элементы - простые.

3. Перемножение матриц А и В (с инициацией матрицы С нулями) А*В=С

4. Проверить, является ли данная строка палиндромом (без использования дополнительной строки)

Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.05.2011, 16:55     4 задания, очень нужно
Посмотрите здесь:

Очень нужна помощь в решении задания C++
C++ очень нужно решить на с++
Очень нужно C++
очень нужно C++
Информатика ! очень нужно C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nursik77
 Аватар для Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
31.05.2011, 17:16     4 задания, очень нужно #2
4. Проверить, является ли данная строка палиндромом (без использования дополнительной строки)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<conio.h>
#include<stdio.h>
#include<string.h>
void main()
{
char str[80];
int i,k,s=0;
clrscr();
printf("Vvedite slovo (palindromnoe): ");
gets(str);
k=strlen(str);
for(i=0;i<k/2;i++)
   if(str[i]==str[k-i-1]) s++;
 if (s==k/2)
puts("Slovo - palindrom.");
else puts("Slovo - ne palindrom.");
getch();
}
Rexer
 Аватар для Rexer
151 / 150 / 19
Регистрация: 10.10.2010
Сообщений: 691
31.05.2011, 17:22     4 задания, очень нужно #3
Вот вам 3-я задача,например
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <stdio.h>
#include <stdlib.h>
 
void proizv (int **mas1,int **mas2,int x1,int y1,int y2)
{
    int **mas3;
    int i,j,k;
    mas3=(int **)malloc(sizeof(int *)*y2);
    for(i=0; i<y2; i++)
        mas3[i] = (int*)malloc(sizeof(int)*x1);
 
    for(i=0; i < x1; i++)
        for(j=0; j < y2; j++)
            mas3[i][j]=0;
 
    for (i=0; i < x1; i++)
        for (j=0; j < y2; j++)
            for (k=0;k < y1; k++)
                mas3[i][j]+=mas1[i][k]*mas2[k][j];
 
    printf("Proizvedenie matr = \n\n\n");
 
    for(i=0; i < x1; i++)
        {
            for(j=0; j < y2; j++)
                {
                    printf("%d ",mas3[i][j]);
 
                }
        printf("\n");
        }
free(mas3);
}
 
int main()
 
{
    int i,j,x1,x2,y1,y2;
    int **mas1;
    int **mas2;
    printf("Vvedite kol-vo strok matrix 1\n");
    scanf("%d",&x1);
    printf("Vvedite kol-vo stolbcov matrix 1\n");
    scanf("%d",&y1);
    printf("Vvedite kol-vo strok matrix 2\n");
    scanf("%d",&x2);
    printf("Vvedite kol-vo stobcov matrix 2\n");
    scanf("%d",&y2);
 
    if(y1 != x2)
    {
        printf("!!!Error!!!\n");
        exit(-1);
    }
    mas1=(int **)malloc(sizeof(int*)*y1);
    for(i=0; i < x1; i++)
        mas1[i]=(int*)malloc(sizeof(int)*x1);
 
    for(i=0; i < x1; i++)
    {
        for(j=0; j < y1; j++)
        {
        printf("matr1 A[%d][%d]=", i+1, j+1);
        scanf("%d",&mas1[i][j]);
        }
    }
    mas2=(int **)malloc(sizeof(int*)*y2);
    for(i=0; i < x2; i++)
        mas2[i]=(int*)malloc(sizeof(int)*x2);
 
    for(i=0; i < x2; i++)
    {
        for(j=0; j <y2; j++)
        {
            printf("matr2 A[%d][%d]=", i+1, j+1);
            scanf("%d",&mas2[i][j]);
        }
    }
 
    proizv(mas1,mas2,x1,y1,y2);
 
    free(mas1);
    free(mas2);
}
Nursik77
 Аватар для Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
31.05.2011, 17:26     4 задания, очень нужно #4
Умножение матриц:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define n 3
#define m 3
int main()
{
int a[n][m],b[n][m],c[n][m];
int i,j;
clrscr();
randomize();
printf("Matrix A:\n\n");
for(i=0;i<n;i++)
 {for(j=0;j<m;j++)
  {a[i][j]=random(10);
  printf(" %2i",a[i][j]);
  }
 printf("\n\n");
 }
printf("Matrix B:\n\n");
for(i=0;i<n;i++)
 {for(j=0;j<m;j++)
  {b[i][j]=random(10);
  printf(" %2i",b[i][j]);
  }
 printf("\n\n");
 }
printf("Matrix C:\n\n");
for(i=0;i<n;i++)
 {for(j=0;j<m;j++)
  {c[i][j]=a[i][j]*b[i][j];
   printf("%2i ",c[i][j]);
  }
  printf("\n\n");
 }
getch();
}
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 17:29  [ТС]     4 задания, очень нужно #5
Не робит чего-то код. выдает отсутствие <conio.h>
Nursik77
 Аватар для Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
31.05.2011, 17:35     4 задания, очень нужно #6
Мой код не робит? Ошибку полностью. Название компилятора?
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 17:45  [ТС]     4 задания, очень нужно #7
Программирование в линукс-среде.
z8.c:2:19: error: conio.h: Нет такого файла или каталога
z8.c: In function 'main':
z8.c:6: warning: return type of 'main' is not 'int'
Nursik77
 Аватар для Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
31.05.2011, 17:56     4 задания, очень нужно #8
Я не знаю какой библиотечный файл в Линукс среде для работы с консолью, придется вам погуглить либо уберите биб. файл <conio.h>,и его clrscr() и getch().
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 18:10  [ТС]     4 задания, очень нужно #9
Ошибок не выдает, но после ввода коэффициентов 2 матрицы останавливает ввод и выдает ошибку сегментирования
Jleloush
 Аватар для Jleloush
1 / 1 / 1
Регистрация: 16.01.2010
Сообщений: 26
31.05.2011, 18:25     4 задания, очень нужно #10
Вот вторая задача
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
using namespace std;
 
void ArrCin(int nums[10]);
bool check(int nums[10]);
 
void ArrCin(int nums[10])
{
    cout << "Enter array: " << endl;
    for (int i=0;i<10;i++)
        cin>>nums[i];
}
bool check(int nums[10])
{
    bool flag=false;
    for (int q=0;q<10;q++)
        for(int w=2;w<nums[q];w++)
            if(nums[q]%w == 0)
                flag=true;
    return flag;
 
}
int main ()
{
    int nums[10];
    ArrCin(nums);
    cout<<endl<<endl;
 
    if(check(nums)==true)
        cout<<"not all numbers are simple! "<<endl;
    else 
        cout<<"All numbers are simple!"<<endl;
 
    return 0;
}
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
31.05.2011, 18:29     4 задания, очень нужно #11
Цитата Сообщение от Inquisition Посмотреть сообщение
Ошибок не выдает, но после ввода коэффициентов 2 матрицы останавливает ввод и выдает ошибку сегментирования
Вы про 3-ю задачу? Если не ошибаюсь, память нужно выделить так:

C++
1
2
3
mas1 = (int**)malloc(sizeof(int*)*x1);
for(i = 0; i < x1; i++)
        mas1[i] = (int*)malloc(sizeof(int)*y1);
И для второй матрицы соответственно, тоже.
Rexer
 Аватар для Rexer
151 / 150 / 19
Регистрация: 10.10.2010
Сообщений: 691
31.05.2011, 18:38     4 задания, очень нужно #12
у вас не работает мой код?ошибку скажите.
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 18:44  [ТС]     4 задания, очень нужно #13
После ввода всех данныз он пишет "Ошибка сегментирования". И всё.
Rexer
 Аватар для Rexer
151 / 150 / 19
Регистрация: 10.10.2010
Сообщений: 691
31.05.2011, 19:16     4 задания, очень нужно #14
У меня Убунту 11.04
CodeBlocks 10.04,все компилируется и запускается.
Вы точно вводите мой код?Среда компилирования какая?
Проверьте.
Попробуйте еще в начале самом добавить строчку
C
1
#include<malloc.h>
и отпишитесь об результате.
Inquisition
1 / 1 / 0
Регистрация: 31.05.2011
Сообщений: 26
31.05.2011, 19:38  [ТС]     4 задания, очень нужно #15
То же самое. Странно.
Среда программирования - линукс. Точнее, специальная программка putty в этой среде
Rexer
 Аватар для Rexer
151 / 150 / 19
Регистрация: 10.10.2010
Сообщений: 691
31.05.2011, 20:33     4 задания, очень нужно #16
Значит дело в вашей putty...У меня все работает...попробуйте из консоли скомпилить.Если файл программы назван matrix,то так пропишите для компиляции
Bash
1
gcc matrix.c -o matrix
Для запуска
Bash
1
./matrix
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.06.2011, 07:06     4 задания, очень нужно
Еще ссылки по теме:

Очень нужно объяснение C++
Очень сильно нужно по С++ C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
01.06.2011, 07:06     4 задания, очень нужно #17
Да, господи, я ж написал в 11 посте в чём у вас косяк...
Yandex
Объявления
01.06.2011, 07:06     4 задания, очень нужно
Ответ Создать тему
Опции темы

Текущее время: 22:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru