{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-04-06T14:01:22.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2026-04-06T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":422,"title":"Closely related?","description":"Given a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48].  Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1). \r\n\r\nHint: assume a crystal_ball exists here.","description_html":"\u003cp\u003eGiven a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48].  Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1).\u003c/p\u003e\u003cp\u003eHint: assume a crystal_ball exists here.\u003c/p\u003e","function_template":"function second = crystal_ball(past_records)\r\n   second = @(first)second;\r\nend","test_suite":"%%\r\npast_records=@()rand*20+[60 65];\r\nsecond=crystal_ball(past_records);\r\nfirst=72;\r\nsecond_correct=77;\r\nassert(abs(second(first)-second_correct)\u003c1)\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":39,"test_suite_updated_at":"2012-02-27T20:01:23.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-27T18:23:43.000Z","updated_at":"2025-06-25T21:25:47.000Z","published_at":"2012-03-14T20:16:54.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48]. Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eHint: assume a crystal_ball exists here.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":418,"title":"Blood test?","description":"Assuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\r\n\r\n* A+A\r\n* A+B\r\n* A+O\r\n* B+B\r\n* B+O\r\n* O+O\r\n\r\nThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'. ","description_html":"\u003cp\u003eAssuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\u003c/p\u003e\u003cul\u003e\u003cli\u003eA+A\u003c/li\u003e\u003cli\u003eA+B\u003c/li\u003e\u003cli\u003eA+O\u003c/li\u003e\u003cli\u003eB+B\u003c/li\u003e\u003cli\u003eB+O\u003c/li\u003e\u003cli\u003eO+O\u003c/li\u003e\u003c/ul\u003e\u003cp\u003eThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'.\u003c/p\u003e","function_template":"function conclude = blood_test(child, putative_mom, putative_dad)\r\n   if tic==toc\r\n      conclude = 'maybe'\r\n   else\r\n      conclude = 'unlikely'\r\n   end\r\nend","test_suite":"%%\r\nchild='AB' % genotype\r\nputative_mom='A+B'; % genotype\r\nputative_dad='O+O'; % genotype\r\nconclude = blood_test(child, putative_mom, putative_dad);\r\nconclude_correct='unlikely';\r\nassert(isequal(conclude,conclude_correct))\r\n%%\r\nchild='O'; % phenotype\r\nputative_mom='A'; % phenotype\r\nputative_dad='B'; % phenotype\r\nconclude = blood_test(child, putative_mom, putative_dad);\r\nconclude_correct='maybe';\r\nassert(isequal(conclude,conclude_correct))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":1,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":54,"test_suite_updated_at":"2012-03-30T03:49:33.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-26T22:59:24.000Z","updated_at":"2026-02-26T21:52:10.000Z","published_at":"2012-03-14T20:10:53.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAssuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+A\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+B\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eB+B\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eB+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eO+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":419,"title":"Acidity of vinegar and salts","description":"Assuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol. \r\n\r\nFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.       ","description_html":"\u003cp\u003eAssuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol.\u003c/p\u003e\u003cp\u003eFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.\u003c/p\u003e","function_template":"function pH = buffer(NaOH, sodium_acetate, acetic_acid)\r\n  pH=4.7+log10(NaOH);\r\nend","test_suite":"%%\r\nNaOH=0; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 4.7;\r\nassert(isequal(pH,pH_correct))\r\n%%\r\nNaOH=0.025; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 4.9;\r\nassert(isequal(pH,pH_correct))\r\n%%\r\nNaOH=0.05; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 5.2;\r\nassert(isequal(pH,pH_correct))\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":54,"test_suite_updated_at":"2012-02-27T05:03:39.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-27T04:41:42.000Z","updated_at":"2026-03-04T15:17:39.000Z","published_at":"2012-03-14T20:11:51.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAssuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":422,"title":"Closely related?","description":"Given a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48].  Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1). \r\n\r\nHint: assume a crystal_ball exists here.","description_html":"\u003cp\u003eGiven a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48].  Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1).\u003c/p\u003e\u003cp\u003eHint: assume a crystal_ball exists here.\u003c/p\u003e","function_template":"function second = crystal_ball(past_records)\r\n   second = @(first)second;\r\nend","test_suite":"%%\r\npast_records=@()rand*20+[60 65];\r\nsecond=crystal_ball(past_records);\r\nfirst=72;\r\nsecond_correct=77;\r\nassert(abs(second(first)-second_correct)\u003c1)\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":39,"test_suite_updated_at":"2012-02-27T20:01:23.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-27T18:23:43.000Z","updated_at":"2025-06-25T21:25:47.000Z","published_at":"2012-03-14T20:16:54.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven a function past_records() that will report blood sugar level of two twin brothers some random number of days ago. For example, one call to past_records() may give [77 78]. Another call to past_records() may give [60 48]. Your crystal_ball should create a function second(first) that will predict blood sugar of second brother from blood sugar level of first brother, (within +/-1).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eHint: assume a crystal_ball exists here.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":418,"title":"Blood test?","description":"Assuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\r\n\r\n* A+A\r\n* A+B\r\n* A+O\r\n* B+B\r\n* B+O\r\n* O+O\r\n\r\nThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'. ","description_html":"\u003cp\u003eAssuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\u003c/p\u003e\u003cul\u003e\u003cli\u003eA+A\u003c/li\u003e\u003cli\u003eA+B\u003c/li\u003e\u003cli\u003eA+O\u003c/li\u003e\u003cli\u003eB+B\u003c/li\u003e\u003cli\u003eB+O\u003c/li\u003e\u003cli\u003eO+O\u003c/li\u003e\u003c/ul\u003e\u003cp\u003eThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'.\u003c/p\u003e","function_template":"function conclude = blood_test(child, putative_mom, putative_dad)\r\n   if tic==toc\r\n      conclude = 'maybe'\r\n   else\r\n      conclude = 'unlikely'\r\n   end\r\nend","test_suite":"%%\r\nchild='AB' % genotype\r\nputative_mom='A+B'; % genotype\r\nputative_dad='O+O'; % genotype\r\nconclude = blood_test(child, putative_mom, putative_dad);\r\nconclude_correct='unlikely';\r\nassert(isequal(conclude,conclude_correct))\r\n%%\r\nchild='O'; % phenotype\r\nputative_mom='A'; % phenotype\r\nputative_dad='B'; % phenotype\r\nconclude = blood_test(child, putative_mom, putative_dad);\r\nconclude_correct='maybe';\r\nassert(isequal(conclude,conclude_correct))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":1,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":54,"test_suite_updated_at":"2012-03-30T03:49:33.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-26T22:59:24.000Z","updated_at":"2026-02-26T21:52:10.000Z","published_at":"2012-03-14T20:10:53.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAssuming: the genetic makeup (genotype) of a child is coded as a pair with two components, combining half genotype of one parent with half from the other parent, the possibilities are:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+A\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+B\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eA+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eB+B\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eB+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eO+O\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe corresponding blood group of the child will be observed (phenotype) to be A, AB, A, B, B, and O respectively. Given either genotype (3 characters, such as 'A+O') or phenotype (1 or 2 characters, such as 'A' or 'AB') of a child, a putative father, and a putative mother, determine 'maybe' or 'unlikely'.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"},{"id":419,"title":"Acidity of vinegar and salts","description":"Assuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol. \r\n\r\nFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.       ","description_html":"\u003cp\u003eAssuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol.\u003c/p\u003e\u003cp\u003eFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.\u003c/p\u003e","function_template":"function pH = buffer(NaOH, sodium_acetate, acetic_acid)\r\n  pH=4.7+log10(NaOH);\r\nend","test_suite":"%%\r\nNaOH=0; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 4.7;\r\nassert(isequal(pH,pH_correct))\r\n%%\r\nNaOH=0.025; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 4.9;\r\nassert(isequal(pH,pH_correct))\r\n%%\r\nNaOH=0.05; % mol\r\nsodium_acetate = 0.1; % mol\r\nacetic_acid = 0.1; % mol\r\npH = round(buffer(NaOH, sodium_acetate, acetic_acid)*10)/10\r\npH_correct = 5.2;\r\nassert(isequal(pH,pH_correct))\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":166,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":54,"test_suite_updated_at":"2012-02-27T05:03:39.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2012-02-27T04:41:42.000Z","updated_at":"2026-03-04T15:17:39.000Z","published_at":"2012-03-14T20:11:51.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eAssuming: pH (potentia hydrogenii) = - log10(H+ ionic concentration in mol/Liter). For a buffer solution containing acetic acid and sodium acetate, according to Henderson-Hasselbalch equation, the solution will have pH = 4.7 + log10(concentration of acetic acid / concentration of sodium acetate). If some sodium hydroxide (NaOH) is added that much (in mol for mol) acetic acid will be converted to sodium acetate. Your function should output final pH for a small input of NaOH in mol.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eFor example, when NaOH added is 0 mol to a solution containing 0.1 mol acetic acid and 0.1 mol sodium acetate then final pH is 4.7.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"term":"tag:\"medical\"","current_player_id":null,"fields":[{"name":"page","type":"integer","callback":null,"default":1,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"per_page","type":"integer","callback":null,"default":50,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"sort","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"body","type":"text","callback":null,"default":"*:*","directive":null,"facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":false},{"name":"group","type":"string","callback":null,"default":null,"directive":"group","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"difficulty_rating_bin","type":"string","callback":null,"default":null,"directive":"difficulty_rating_bin","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"id","type":"integer","callback":null,"default":null,"directive":"id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"tag","type":"string","callback":null,"default":null,"directive":"tag","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"product","type":"string","callback":null,"default":null,"directive":"product","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_at","type":"timeframe","callback":{},"default":null,"directive":"created_at","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"profile_id","type":"integer","callback":null,"default":null,"directive":"author_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_by","type":"string","callback":null,"default":null,"directive":"author","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player_id","type":"integer","callback":null,"default":null,"directive":"solver_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player","type":"string","callback":null,"default":null,"directive":"solver","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"solvers_count","type":"integer","callback":null,"default":null,"directive":"solvers_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"comments_count","type":"integer","callback":null,"default":null,"directive":"comments_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"likes_count","type":"integer","callback":null,"default":null,"directive":"likes_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leader_id","type":"integer","callback":null,"default":null,"directive":"leader_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leading_solution","type":"integer","callback":null,"default":null,"directive":"leading_solution","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true}],"filters":[{"name":"asset_type","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":"\"cody:problem\"","prepend":true},{"name":"profile_id","type":"integer","callback":{},"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":"author_id","static":null,"prepend":true}],"query":{"params":{"per_page":50,"term":"tag:\"medical\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"medical\"","","\"","medical","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007faf335f4940\u003e":null,"#\u003cMathWorks::Search::Field:0x00007faf335f48a0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007faf335f3ea0\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007faf335f4bc0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007faf335f4b20\u003e":50,"#\u003cMathWorks::Search::Field:0x00007faf335f4a80\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007faf335f49e0\u003e":"tag:\"medical\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007faf335f49e0\u003e":"tag:\"medical\""},"queried_facets":{}},"query_backend":{"connection":{"configuration":{"index_url":"http://index-op-v2/solr/","query_url":"http://search-op-v2/solr/","direct_access_index_urls":["http://index-op-v2/solr/"],"direct_access_query_urls":["http://search-op-v2/solr/"],"timeout":10,"vhost":"search","exchange":"search.topic","heartbeat":30,"pre_index_mode":false,"host":"rabbitmq-eks","port":5672,"username":"cody-search","password":"78X075ddcV44","virtual_host":"search","indexer":"amqp","http_logging":"true","core":"cody"},"query_connection":{"uri":"http://search-op-v2/solr/cody/","proxy":null,"connection":{"parallel_manager":null,"headers":{"User-Agent":"Faraday v1.0.1"},"params":{},"options":{"params_encoder":"Faraday::FlatParamsEncoder","proxy":null,"bind":null,"timeout":null,"open_timeout":null,"read_timeout":null,"write_timeout":null,"boundary":null,"oauth":null,"context":null,"on_data":null},"ssl":{"verify":true,"ca_file":null,"ca_path":null,"verify_mode":null,"cert_store":null,"client_cert":null,"client_key":null,"certificate":null,"private_key":null,"verify_depth":null,"version":null,"min_version":null,"max_version":null},"default_parallel_manager":null,"builder":{"adapter":{"name":"Faraday::Adapter::NetHttp","args":[],"block":null},"handlers":[{"name":"Faraday::Response::RaiseError","args":[],"block":null}],"app":{"app":{"ssl_cert_store":{"verify_callback":null,"error":null,"error_string":null,"chain":null,"time":null},"app":{},"connection_options":{},"config_block":null}}},"url_prefix":"http://search-op-v2/solr/cody/","manual_proxy":false,"proxy":null},"update_format":"RSolr::JSON::Generator","update_path":"update","options":{"url":"http://search-op-v2/solr/cody"}}},"query":{"params":{"per_page":50,"term":"tag:\"medical\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"medical\"","","\"","medical","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007faf335f4940\u003e":null,"#\u003cMathWorks::Search::Field:0x00007faf335f48a0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007faf335f3ea0\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007faf335f4bc0\u003e":1,"#\u003cMathWorks::Search::Field:0x00007faf335f4b20\u003e":50,"#\u003cMathWorks::Search::Field:0x00007faf335f4a80\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007faf335f49e0\u003e":"tag:\"medical\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007faf335f49e0\u003e":"tag:\"medical\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":422,"difficulty_rating":"easy"},{"id":418,"difficulty_rating":"easy"},{"id":419,"difficulty_rating":"easy"}]}}