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

Исправьте ошибки что найдете в моей программе. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Прошу помочь http://www.cyberforum.ru/cpp-beginners/thread59803.html
Нужно привести програмку в порядок, с первой частью вроде справился, со второй не могу, ошибка С2784. Первая часть: было: float prois(float a, float b, int n) {float pr=1,k=1,l; while(k<=n) {if k%2==0 l=-k;
C++ Теория, Временные объекты Прошу ответить на пару вопросов. Конкретный вопрос: В тексте while (Pos != istream_iterator<string>()) {...} происходит ли создание объекта типа итератор при каждом сравнении или только 1 раз в начале? Общий вопрос: как я сам могу проверить, выяснить создаются ли временные объекты в том или ином случае не обращаясь к документации и книгам? (пользуюсь VS 2008) http://www.cyberforum.ru/cpp-beginners/thread59802.html
C++ Помогите с лабораторной
Задание Открыть файл, содержащий 10 целых чисел, показать их в диалоге, создать новый файл, записать в него среднее арифметическое этих чисел.
C++ В чём тут ошибка?
Когда запускаю программу, он её выполняет, но после ввода первого имени он зависает о выдаёт ошибку: #include <conio.h> #include <string.h> #include <iostream> using namespace std; class Worker { char Name; char Inicials; char Doljnost;
C++ Треугольник и точка. http://www.cyberforum.ru/cpp-beginners/thread59744.html
Мне завтра сдавать лабораторну работу в универе, это последний день, а я приехал только сегодня из далека(ездил в гости за 300 км) День сдачи завтра последний, поэтому очень прошу помочь мне... В общем задание такое, задана координатами вершин четырёхугольная фигура, и с клавиатуры вводятся координаты ещё одной точки, задача этой программы определить принадлежит ли точка фигуре или нет......
C++ вывод чисел на екран! Составить программу которая выводит десятичные числа от 0 до бесконечности!!! подробнее

Показать сообщение отдельно
Aros
1 / 1 / 0
Регистрация: 29.10.2009
Сообщений: 11
29.10.2009, 14:07     Исправьте ошибки что найдете в моей программе.
помогите пожалуйста бедному студенту исправьте пожалуйста ошибки что найдете в моей программе
программа читает матрицу проверяет или элементы непарных строк равняются нулю а парных единице
потом архивирует матрицу записывает в новый массив номер столбца где есть единица а когда
конец строки -1 и выводит значение элемента из заархивованой матрицы на паскале программа работает
исправте ошибки в программе на си на паскале программа работает

но мне нада динамические массиви потому я переделал с паскаля на си

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
85
86
87
88
89
90
91
92
93
94
95
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
#include<alloc.h>
#define n 3
 
void readm();
void writem();
void goodbad();
void archm();
void eldearch( );
 
 
 
void main() {
int k,**m,i,*ch; l: k=1;
readm();
goodbad();
for(i=0;i<n;i++){
if (*(ch+i)==1){
k=1;}}
if(k==1){
puts("Matriza Nepravilna!!!");
puts("Neparni ryadki mayut mistiti tilki nuli");
puts("Parni mayut   mistiti tilki 1-zi");
puts("-----------------------------");
goto l;  }
else { puts("Good MAtrix!--------------");
writem();
archm();
eldearch();}}
 
 
int readm()  { int **m,i,j;
m=(int**)calloc(n,sizeof(int*));
puts("Vvedit matrizu------");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("m[%d][%d]",i,j);
scanf("%i",*(*(m+i)+j));
}}}
 
int goodbad()  { int **m,i,j,*ch;
m=(int**)calloc(n,sizeof(int*));
ch=(int*)calloc(n*n,sizeof(int));
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if((i%2)!=0){
if(*(*(m+i)+j)==0){
*(ch+i)=0;} else *(ch+i)=1;}
else
if ((i%2)==0) {
if(*(*(m+i)+j)==1) {
*(ch+i)=0;} *(ch+i)=1;}}}}
 
int writem()
{  int **m,i,j;
puts("-----------------------");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("%i",*(*(m+i)+j));
}}puts("----------------------");}
 
int archm(){ int **m,d,*s,i,j;
d=1;
m=(int**)calloc(n,sizeof(int*));
s=(int*)calloc(n*n+n,sizeof(int));
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(*(*(m+i)+j)==1){
*(s+d)=j;d++;}
if(j==n){
*(s+d)=-1;d++;}}}
for(i=0;i<n*n;i++){
printf("  %i  ",*(s+i));}}
 
 
int eldearch(){ int e,q,g,r,i,j,*s;char t;
puts("---------------");
puts("Vvedit nomer ryadka i stovpca v yakomu ye element");
scanf("%i%i",e,q);
q=1;r=1;t='1';
for(i=g;i<n;i++){
if(*(s+i)==-1){
r++;i++;
if(r==e){
if(*(s+i)>0){g++;i++;
if(g==q){
puts("-----------");
printf("a[%d][%d]=%i",e,q,t);
}else t='0';
puts("-----------------");
printf("a[%d][%d]=%i",e,q,t);
}}}}}
помогите!!!


программа на паскале

Pascal
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
85
86
87
88
89
90
program matrixcode;
uses crt;
label l;
 
const n=3;
 
var m:array[1..n,1..n] of integer;
ch: array[1..n*n] of integer; k: integer;
d:integer; s: array[1..n*n+n] of integer;
i,j: integer; a:array[1..n,1..n] of integer;
e,q,r,g:integer;t: char;
 
procedure readm;
begin
writeln('Vvedit Matrizu----------');
for i:=1 to n do begin
for j:=1 to n do begin
read(m[i,j]);
end; readln; end;end;
 
procedure goodbad;
begin
for i:=1 to n do begin
for j:=1 to n do begin
if (i mod 2) <> 0 then begin
if m[i,j]=0 then begin
ch[i]:=0;end else ch[i]:=1;end else
if (i mod 2)= 0 then begin
if m[i,j]=1 then begin
ch[i]:=0;end else ch[i]:=1;end;
end;end;end;
 
procedure writem;
begin
writeln('------------------------------------');
for i:=1 to n do begin
for j:=1 to n do begin
write(m[i,j]:3);
end;writeln; end;writeln('-------------'); end;
 
procedure archm;
begin d:=1;
for i:=1 to n do begin
for j:=1 to n do begin
if m[i,j]=1 then begin
s[d]:=j;d:=d+1; end ;
if j=n then begin
s[d]:=-1;d:=d+1;end;
end;end;
for i:=1 to n*n do begin
write(' ',s[i]);writeln;  end;
end;
 
procedure elementdearch;
begin writeln;
writeln('Vvedit nomer ryadka i stovpza v yakomu ye element----');
readln(e,q);
g:=1;r:=1;t:='1';
for i:=g to n do begin
if s[i] = -1 then begin
r:=r+1;i:=i+1;
if r=e then begin
if s[i]>0 then begin g:=g+1;i:=i+1;
if g=q then begin
writeln('--------------');
writeln('a[',e,',',q,']=',t);end;
end else t:='0';
writeln('--------------');
writeln('a[',e,',',q,']=',t);
end;end;end;end;
 
begin l: k:=0;
readm;
goodbad;
for i:=1 to n*n do begin
if ch[i] = 1 then begin
k:= 1;
end;end;
if k = 1 then begin
writeln('Matriza nepravilna!Error......');
writeln('Neparni ryadki mayut mistiti vsi elementi = 0');
writeln('proceding...---->on begining');
goto l;
end else begin
writeln( 'Good Matrix!------------------->');
writem;
archm;
elementdearch;
end;readkey;
end.
Добавлено через 14 минут
видает такие ошибки type missmatch in redeclaration of 'readm()'
type missmatch in redeclaration of 'writem()'
type missmatch in redeclaration of 'goodbad()'
type missmatch in redeclaration of 'archm()'
type missmatch in redeclaration of 'eldearch()'
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru